diff --git a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po index 50ded38699..8604815d6a 100644 --- a/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ar/LC_MESSAGES/django.po @@ -1,149 +1,151 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-11 23:22+0000\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" +"Last-Translator: \n" +"Language-Team: Arabic\n" +"Language: ar_SA\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\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" +"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" +"X-Crowdin-Project: inventree\n" +"X-Crowdin-Project-ID: 452300\n" +"X-Crowdin-Language: ar\n" +"X-Crowdin-File: /[inventree.InvenTree] l10/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" +"X-Crowdin-File-ID: 216\n" + #: InvenTree/api.py:272 msgid "API endpoint not found" -msgstr "" +msgstr "نقطة نهاية API غير موجودة" #: InvenTree/api.py:505 msgid "User does not have permission to view this model" -msgstr "" +msgstr "المستخدم ليس لديه الصلاحية لعرض هذا النموذج" #: InvenTree/conversion.py:160 #, python-brace-format msgid "Invalid unit provided ({unit})" -msgstr "" +msgstr "الوحدة المقدمة غير صالحة ({unit})" #: InvenTree/conversion.py:177 msgid "No value provided" -msgstr "" +msgstr "لم يتم تقديم قيمة" #: InvenTree/conversion.py:204 #, python-brace-format msgid "Could not convert {original} to {unit}" -msgstr "" +msgstr "تعذّر تحويل {original} إلى {unit}" #: InvenTree/conversion.py:206 msgid "Invalid quantity supplied" -msgstr "" +msgstr "الكمية المقدمة غير صحيحة" #: InvenTree/conversion.py:220 #, python-brace-format msgid "Invalid quantity supplied ({exc})" -msgstr "" +msgstr "الكمية المقدمة غير صحيحة ({exc})" #: InvenTree/exceptions.py:109 msgid "Error details can be found in the admin panel" -msgstr "" +msgstr "يمكن العثور على تفاصيل الخطأ في لوحة التحكم" #: InvenTree/fields.py:136 msgid "Enter date" -msgstr "" +msgstr "أدخل التاريخ" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:460 -#: build/serializers.py:538 build/templates/build/sidebar.html:25 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3194 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:694 stock/serializers.py:852 stock/serializers.py:948 -#: stock/serializers.py:998 stock/serializers.py:1309 stock/serializers.py:1398 -#: stock/serializers.py:1563 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" -msgstr "" +msgstr "ملاحظات" #: InvenTree/format.py:164 #, python-brace-format msgid "Value '{name}' does not appear in pattern format" -msgstr "" +msgstr "القيمة '{name}' لا تظهر في تنسيق النمط" #: InvenTree/format.py:175 msgid "Provided value does not match required pattern: " -msgstr "" +msgstr "القيمة المقدمة لا تتطابق مع النمط المطلوب: " #: InvenTree/forms.py:128 msgid "Enter password" -msgstr "" +msgstr "أدخل كلمة المرور" #: InvenTree/forms.py:129 msgid "Enter new password" -msgstr "" +msgstr "أدخل كلمة مرور جديدة" #: InvenTree/forms.py:138 msgid "Confirm password" -msgstr "" +msgstr "تأكيد كلمة المرور" #: InvenTree/forms.py:139 msgid "Confirm new password" -msgstr "" +msgstr "تأكيد كلمة المرور الجديدة" #: InvenTree/forms.py:143 msgid "Old password" -msgstr "" +msgstr "كلمة المرور القديمة" #: InvenTree/forms.py:182 msgid "Email (again)" -msgstr "" +msgstr "البريد الإلكتروني (مرة أخرى)" #: InvenTree/forms.py:186 msgid "Email address confirmation" -msgstr "" +msgstr "تأكيد البريد الإلكتروني" #: InvenTree/forms.py:209 msgid "You must type the same email each time." -msgstr "" +msgstr "يجب عليك كتابة نفس البريد الإلكتروني كل مرة." #: InvenTree/forms.py:248 InvenTree/forms.py:256 msgid "The provided primary email address is not valid." -msgstr "" +msgstr "عنوان البريد الإلكتروني الرئيسي المقدم غير صالح." #: InvenTree/forms.py:263 msgid "The provided email domain is not approved." -msgstr "" +msgstr "لم تتم الموافقة على نطاق البريد الإلكتروني المقدم." #: InvenTree/forms.py:392 msgid "Registration is disabled." -msgstr "" +msgstr "التسجيل معطل." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" -msgstr "" +msgstr "الكمية المقدمة غير صحيحة" #: InvenTree/helpers.py:533 msgid "Empty serial number string" -msgstr "" +msgstr "سلسلة الرقم التسلسلي فارغة" #: InvenTree/helpers.py:562 msgid "Duplicate serial" -msgstr "" +msgstr "تكرار التسلسل" #: InvenTree/helpers.py:594 InvenTree/helpers.py:637 #, python-brace-format @@ -205,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -404,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:896 part/models.py:3661 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -418,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2766 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:919 -#: part/models.py:3676 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -445,19 +455,19 @@ msgstr "" #: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2359 -#: templates/js/translated/part.js:2802 templates/js/translated/part.js:2914 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -465,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2811 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -502,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4284 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3012 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -557,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1086 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -598,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -652,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1228 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -716,7 +726,7 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:291 build/serializers.py:1225 part/models.py:4162 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 #: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 @@ -724,7 +734,7 @@ msgstr "" msgid "Consumable" msgstr "" -#: build/api.py:292 build/serializers.py:1226 part/models.py:4156 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 #: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 @@ -745,15 +755,15 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:303 company/models.py:879 company/serializers.py:388 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 #: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -764,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -779,37 +789,37 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1224 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4177 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 @@ -817,34 +827,34 @@ msgstr "" #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 #: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 #: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1215 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1482 part/api.py:1778 part/models.py:397 part/models.py:3023 -#: part/models.py:3167 part/models.py:3315 part/models.py:3336 -#: part/models.py:3358 part/models.py:3494 part/models.py:3834 -#: part/models.py:3997 part/models.py:4128 part/models.py:4487 -#: part/serializers.py:1174 part/serializers.py:1802 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -855,8 +865,8 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:445 -#: stock/serializers.py:882 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 @@ -869,170 +879,171 @@ msgstr "" #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2328 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1007 +#: build/models.py:283 build/serializers.py:1009 #: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:294 order/serializers.py:630 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1528 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:295 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1126 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 +#: build/models.py:341 order/models.py:521 order/models.py:2100 #: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2382 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1143 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 #: templates/js/translated/build.js:2394 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:961 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 +#: build/models.py:385 common/models.py:122 common/models.py:136 #: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 #: templates/js/translated/build.js:2319 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1040,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:227 build/serializers.py:276 -#: build/serializers.py:874 order/models.py:559 order/serializers.py:462 -#: order/serializers.py:625 part/serializers.py:1543 part/serializers.py:1965 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:665 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:232 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:555 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:214 -#: build/serializers.py:261 build/serializers.py:1231 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1384 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3181 part/models.py:4150 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1109,7 +1120,7 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:656 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 @@ -1120,59 +1131,59 @@ msgstr "" #: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3359 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:854 order/serializers.py:1228 -#: order/serializers.py:1249 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:759 stock/serializers.py:1247 stock/serializers.py:1359 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 @@ -1183,430 +1194,446 @@ msgstr "" #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:91 build/serializers.py:1136 build/serializers.py:1216 -#: part/admin.py:41 part/admin.py:405 part/models.py:3999 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:103 +#: build/serializers.py:105 msgid "Project Code Label" msgstr "" -#: build/serializers.py:164 build/serializers.py:883 +#: build/serializers.py:166 build/serializers.py:885 #: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:184 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:195 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:215 build/serializers.py:262 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:283 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:286 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:301 order/serializers.py:638 order/serializers.py:1388 -#: stock/serializers.py:676 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:302 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:307 build/serializers.py:448 build/serializers.py:520 -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 -#: part/serializers.py:1194 stock/serializers.py:102 stock/serializers.py:687 -#: stock/serializers.py:847 stock/serializers.py:943 stock/serializers.py:1391 -#: stock/serializers.py:1647 stock/templates/stock/item_base.html:394 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 #: templates/js/translated/barcode.js:578 #: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:308 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:322 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:323 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:338 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:363 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:410 build/serializers.py:472 build/serializers.py:561 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:449 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:455 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:456 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:461 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:521 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:527 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:646 stock/admin.py:164 -#: stock/serializers.py:994 stock/serializers.py:1535 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 #: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:533 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:534 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:619 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:626 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:627 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:654 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:655 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:656 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:686 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:688 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:698 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:703 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:704 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:714 templates/js/translated/build.js:316 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:719 order/serializers.py:320 order/serializers.py:1291 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:720 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:730 templates/js/translated/build.js:320 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:739 templates/js/translated/build.js:304 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:777 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:787 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:795 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:831 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:845 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:860 stock/serializers.py:1260 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:908 order/serializers.py:1282 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:914 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:921 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:945 order/serializers.py:1534 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1008 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1016 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1017 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1022 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1023 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1028 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1029 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1034 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1035 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1057 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1128 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1129 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1130 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:456 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1131 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1132 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1135 part/admin.py:39 part/admin.py:398 -#: part/models.py:3998 part/stocktake.py:219 stock/admin.py:152 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 msgid "Part ID" msgstr "" -#: build/serializers.py:1137 build/serializers.py:1217 part/admin.py:402 -#: part/models.py:4000 +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1150 stock/serializers.py:589 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 #: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 #: templates/js/translated/build.js:2519 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1151 stock/templates/stock/item_base.html:340 +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 msgid "Available Quantity" msgstr "" -#: build/serializers.py:1219 part/admin.py:45 part/stocktake.py:221 +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 msgid "Part Description" msgstr "" -#: build/serializers.py:1220 +#: build/serializers.py:1229 msgid "Part Category ID" msgstr "" -#: build/serializers.py:1221 +#: build/serializers.py:1230 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1227 common/models.py:1488 part/admin.py:113 -#: part/models.py:1069 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1228 +#: build/serializers.py:1237 msgid "Inherited" msgstr "" -#: build/serializers.py:1229 part/models.py:4210 +#: build/serializers.py:1238 part/models.py:4275 #: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 #: templates/js/translated/build.js:2714 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1233 part/models.py:4007 part/models.py:4479 +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1242 build/templates/build/detail.html:236 +#: build/serializers.py:1251 build/templates/build/detail.html:236 #: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1247 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:882 part/serializers.py:1561 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2807 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1252 part/serializers.py:1563 +#: build/serializers.py:1261 part/serializers.py:1573 #: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1257 part/bom.py:172 part/serializers.py:1588 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1261 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1262 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1263 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1264 part/serializers.py:888 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1625,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1759,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:175 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1797,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1808,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1848,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1865,9 +1892,9 @@ msgstr "" #: stock/templates/stock/item_base.html:162 #: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -2210,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2360,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3842 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2431,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1057 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1063 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1075 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1081 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1097 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:29 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3204 part/models.py:3291 part/models.py:3365 -#: part/models.py:3393 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:506 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:960 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2473 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:970 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3725,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4193,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:444 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4222,188 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:519 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1050 part/models.py:3668 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2374 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 #: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4185 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:772 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2014 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2015 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1545 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2021 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4415,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:386 part/admin.py:126 part/serializers.py:881 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4427,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4485,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1295 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4508,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4517,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4683,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:527 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4693,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:886 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4713,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4779,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:516 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4799,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4817,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:885 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:980 stock/serializers.py:1158 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4877,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3848 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4969,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -5025,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5130,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5151,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5166,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5213,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5237,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5250,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5262,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5278,324 +5351,324 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:606 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1399 -#: order/serializers.py:1509 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1276 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" @@ -5607,163 +5680,172 @@ msgstr "" msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:321 order/serializers.py:1292 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:331 order/serializers.py:1302 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:469 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:490 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:492 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:502 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:508 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:510 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:523 part/models.py:946 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:531 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:547 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:550 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:559 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:599 order/serializers.py:1370 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:605 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:615 order/serializers.py:723 order/serializers.py:1716 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:631 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:639 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:650 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:651 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:667 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:691 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:739 order/serializers.py:1732 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:755 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:766 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1118 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1179 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1240 order/serializers.py:1379 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1259 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1389 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1411 order/serializers.py:1517 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1414 order/serializers.py:1520 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1461 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1468 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1686 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1692 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1695 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1724 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1807 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5976,10 +6058,10 @@ msgstr "" #: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 #: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6093,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6190,21 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:48 part/models.py:945 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2345 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:954 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2351 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:927 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6216,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:863 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6229,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:913 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1041 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6241,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:880 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3099 part/models.py:3113 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3106 part/models.py:3120 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6271,13 +6353,13 @@ msgid "Category Path" msgstr "" #: part/admin.py:325 part/models.py:398 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2821 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6294,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1328 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1343 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6338,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6382,30 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1496 part/models.py:937 part/models.py:3386 part/models.py:3943 -#: part/serializers.py:419 part/serializers.py:1184 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2381 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1786 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:105 part/models.py:980 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 -#: templates/js/translated/part.js:2395 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:887 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6414,7 +6504,7 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:86 part/models.py:3944 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -6429,8 +6519,8 @@ msgstr "" msgid "Default location for parts in this category" msgstr "" -#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2827 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" @@ -6492,670 +6582,706 @@ msgstr "" msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:741 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:842 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:852 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:867 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:896 part/models.py:3999 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:901 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:902 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:912 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:920 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:928 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:938 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:953 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:978 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1024 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1025 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1032 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1033 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1042 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1051 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1058 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1064 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1070 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1076 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1082 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1086 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1091 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1092 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1098 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1104 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1105 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1113 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1118 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1134 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1144 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1149 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2488 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2022 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3013 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3029 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3030 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3036 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3037 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3043 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3044 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3051 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3057 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3058 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3064 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3065 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3071 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3072 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3078 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3079 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3085 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3086 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3092 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3093 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3100 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3107 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3114 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3121 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3127 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3128 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3134 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3135 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3141 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3142 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3148 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3149 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3168 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3173 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3174 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3182 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3186 part/models.py:3269 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3187 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3195 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3205 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3211 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3212 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3218 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3219 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3275 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3276 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3281 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3282 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3292 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3302 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3414 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3440 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3461 part/models.py:3630 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3472 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3483 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3500 templates/js/translated/part.js:2897 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3501 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3507 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3508 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3515 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3516 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3520 report/models.py:209 -#: templates/js/translated/part.js:2918 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3520 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3525 templates/js/translated/part.js:2926 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3526 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3531 templates/js/translated/part.js:2934 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3532 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3537 templates/js/translated/part.js:2941 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3539 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3545 part/models.py:3689 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3546 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3578 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3605 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3610 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3647 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3662 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3669 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3677 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3683 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3684 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3690 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3724 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3750 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3786 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3835 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3843 part/models.py:3951 part/models.py:3952 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3849 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3899 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3958 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3959 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3997 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3998 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:4000 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:4001 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:4001 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4112 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4119 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4129 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4139 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4140 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4151 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4157 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4163 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4170 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4171 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4178 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4186 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4192 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4193 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4198 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4199 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4204 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4205 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4211 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4296 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4306 part/models.py:4308 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4446 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4467 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4480 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4488 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4504 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4512 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4513 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4532 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4537 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7163,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7181,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:612 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7189,308 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:890 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:893 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "" -#: part/serializers.py:923 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:924 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:930 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:931 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:937 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:938 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:946 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:947 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:970 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1186 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1196 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1202 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1203 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1208 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1209 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1214 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1215 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1223 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1329 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1336 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1344 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1351 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1380 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1381 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1404 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1411 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1414 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1565 part/templates/part/part_base.html:235 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 #: templates/js/translated/bom.js:1219 msgid "Can Build" msgstr "" -#: part/serializers.py:1803 +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1811 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1812 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1817 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1818 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1829 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1830 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1867 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1868 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1944 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1947 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1950 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1959 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1967 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1990 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7642,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7829,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2297 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7878,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7892,47 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2461 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7990,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2409 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8038,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8111,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8190,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8212,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8458,11 +8588,11 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" @@ -8502,11 +8632,11 @@ msgstr "" msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:113 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:147 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8800,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -9030,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9043,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 -#: templates/js/translated/build.js:2530 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9076,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9101,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:595 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9164,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9189,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9207,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1152 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9231,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:600 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9269,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9281,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9294,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9303,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9320,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:479 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9337,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1546 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1529 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:722 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1435 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9622,209 +9737,209 @@ msgstr "" msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:322 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:451 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:452 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:471 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:592 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:598 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:602 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:608 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:627 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:633 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:657 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:670 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:677 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:688 stock/serializers.py:1392 stock/serializers.py:1648 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:695 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:705 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:760 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:767 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:768 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:773 stock/serializers.py:853 stock/serializers.py:949 -#: stock/serializers.py:999 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:781 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:789 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:800 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:813 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:848 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:883 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:896 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:913 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:944 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:981 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:987 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1083 stock/serializers.py:1160 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1153 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1272 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1296 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1302 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1310 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1320 stock/serializers.py:1574 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1399 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1404 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1405 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1410 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1411 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1421 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1488 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1517 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1536 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1564 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9856,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9912,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9932,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9993,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -10001,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -10024,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10043,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10174,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10283,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10561,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10784,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10826,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10895,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11231,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11478,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3236 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11643,7 +11758,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" @@ -11867,7 +11982,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" @@ -11956,13 +12071,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:369 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:371 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" @@ -12221,9 +12336,9 @@ msgid "No builds matching query" msgstr "" #: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2320 templates/js/translated/part.js:2759 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" @@ -12231,7 +12346,7 @@ msgstr "" msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" @@ -12265,8 +12380,8 @@ msgstr "" msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2680 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" @@ -12300,7 +12415,7 @@ msgstr "" msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" @@ -12456,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12473,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12596,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12751,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12800,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12832,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2523 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2292 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2388 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2548 templates/js/translated/part.js:2678 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2564 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2662 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2698 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2778 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2794 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2882 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2904 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2954 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2955 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" -#: templates/js/translated/part.js:2959 +#: templates/js/translated/part.js:2961 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2989 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3068 templates/js/translated/part.js:3069 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3071 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3077 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3127 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3133 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3229 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3245 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3290 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13381,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13706,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13764,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" @@ -14866,3 +15009,4 @@ msgstr "" #: users/models.py:408 msgid "Permission to delete items" msgstr "" + diff --git a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po index e430171527..54e3d79bb6 100644 --- a/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/bg/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Bulgarian\n" "Language: bg_BG\n" @@ -56,26 +56,29 @@ msgstr "Подробности за грешката могат да се нам msgid "Enter date" msgstr "Въведи дата" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Бележки" @@ -132,7 +135,7 @@ msgstr "Въведеният домейн на електронната поща msgid "Registration is disabled." msgstr "Регистрацията е деактивирана." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Въведена е недопустима стойност" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 +msgid "French" +msgstr "" + +#: InvenTree/locales.py:31 +msgid "Hebrew" +msgstr "" + +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Хинди" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Унгарски" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Италиански" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Японски" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Корейски" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Нидерландски" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Норвежки" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Полски" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Португалски" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Португалски (Бразилия)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Руски" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Словенски" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Шведски" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Тайландски" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Турски" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Виетнамски" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Китайски (опростен)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Китайски (традиционен)" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Част" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Потребител" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Изпратено" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Цялостна наличност" @@ -6375,753 +6504,784 @@ msgstr "Цялостна наличност" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Наличност" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Няма наличност" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Място в склада" msgid "Stock Locations" msgstr "Места в склада" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po index 42a8ecd963..fb9f9c3e04 100644 --- a/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -56,26 +56,29 @@ msgstr "Podrobnosti o chybě lze nalézt v panelu administrace" msgid "Enter date" msgstr "Zadejte datum" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Poznámky" @@ -132,7 +135,7 @@ msgstr "Zadaná e-mailová doména není povolena." msgid "Registration is disabled." msgstr "Registrace vypnuta." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Vyplněno neplatné množství" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Zadaná URL adresa není platný soubor obrázku" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulharština" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Čeština" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Dánština" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Němčina" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Řečtina" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Angličtina" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Španělština" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Španělština (Mexiko)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Perština" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finština" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Francouzština" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebrejština" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hindština" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Maďarština" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italština" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japonština" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Korejština" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Lotyština" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Nizozemština" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norština" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polština" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugalština" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugalština (Brazilská)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "Rumunština" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Ruština" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Slovenština" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovinština" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Srbština" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Švédština" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thajština" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turečtina" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Ukrajinština" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamština" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Čínština (zjednodušená)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Čínština (tradiční)" @@ -403,9 +414,9 @@ msgstr "Duplicitní názvy nemohou existovat pod stejným nadřazeným názvem" msgid "Invalid choice" msgstr "Neplatný výběr" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Neplatný výběr" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Název" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Název" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Popis" @@ -464,8 +475,8 @@ msgstr "Popis" msgid "Description (optional)" msgstr "Popis (volitelně)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Cesta" @@ -501,12 +512,12 @@ msgstr "Chyba serveru" msgid "An error has been logged by the server." msgstr "Server zaznamenal chybu." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Musí být platné číslo" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "Super-uživatel" msgid "Is this user a superuser" msgstr "Je tento uživatel superuživatel" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Vítejte v InvenTree" msgid "Invalid value" msgstr "Neplatná hodnota" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Datový soubor" @@ -651,7 +662,7 @@ msgstr "URL souboru vzdáleného obrázku" msgid "Downloading images from remote URL is not enabled" msgstr "Stahování obrázků ze vzdálené URL není povoleno" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Kontrola procesů na pozadí se nezdařila" @@ -711,48 +722,48 @@ msgstr "Informace o systému" msgid "About InvenTree" msgstr "O InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Sestavení musí být zrušeno před odstraněním" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Spotřební materiál" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Volitelné" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Sledováno" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Přiděleno" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Dostupné" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Vytvořit objednávku" @@ -778,72 +789,72 @@ msgstr "Vytvořit objednávku" msgid "Build Orders" msgstr "Vytvořené objednávky" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Neplatná volba nadřazeného sestavení" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "Musí být specifikován odpovědný uživatel nebo skupina" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Díly obědnávky sestavení nemohou být změněny" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Referenční číslo objednávky" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Reference" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Stručný popis sestavení (nepovinné)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Nadřazená sestava" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Příkaz sestavení pro který je toto sestavení přiděleno" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Příkaz sestavení pro který je toto sestavení přiděleno" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Díl" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Vyber téma, které chceš stavět" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Referenční číslo prodejní objednávky" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Prodejní příkaz, kterému je tato verze přidělena" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Umístění lokace" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Vyberte lokaci, ze které chcete provést inventuru pro sestavu. (nechte prázdné, chcete-li provést inventuru z libovolné lokace)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Cílová lokace" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Vyberte lokaci, kde budou dokončené položky uloženy" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Množství sestav" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Počet skladových položek k sestavení" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Dokončené položky" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Počet skladových položek, které byly dokončeny" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Stav sestavení" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Stavový kód sestavení" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Kód dávky" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Dávkový kód pro tento výstup sestavení" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Datum vytvoření" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Cílové datum dokončení" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Cílové datum dokončení sestavení. Sestavení bude po tomto datu v prodlení." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Datum dokončení" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "dokončil" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Vystavil" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Uživatel, který vydal tento příkaz k sestavení" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Odpovědný" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Uživatel nebo skupina odpovědná za tento příkaz k sestavení" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Externí odkaz" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Odkaz na externí URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Priorita sestavení" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Priorita tohoto příkazu k sestavení" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Priorita tohoto příkazu k sestavení" msgid "Project Code" msgstr "Kód projektu" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Kód projektu pro objednávku sestavení" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "Nepodařilo se uvolnit úlohu pro dokončení přidělení sestavy" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Příkaz k sestavení {build} byl dokončen" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Příkaz k sestavení byl dokončen" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Nebyl specifikováno žádný výstup sestavení" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Výstup sestavení je již dokončen" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Výstup sestavení neodpovídá příkazu sestavení" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Množství musí být vyšší než nula" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Množství nemůže být větší než výstupní množství" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Výstup sestavy {serial} neprošel všemi požadavky" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "Vytvořit položku řádku objednávky" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Vytvořit objekt" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Vytvořit objekt" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Množství" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Vyžadované množství pro objednávku" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Položka sestavení musí specifikovat výstup sestavení, protože hlavní díl je označen jako sledovatelný" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Zabrané množství ({q}) nesmí překročit dostupné skladové množství ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Skladová položka je nadměrně zabrána" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Zabrané množství musí být větší než nula" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Množství musí být 1 pro zřetězený sklad" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Vybraná položka zásob neodpovídá řádku BOM" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Skladové položky" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Zdrojová skladová položka" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Skladové množství pro sestavení" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Instalovat do" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Cílová skladová položka" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Název dílu" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Vytvořit výstup" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Vytvořený výstup neodpovídá nadřazenému sestavení" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Výstupní část se neshoduje s částí příkazu sestavení" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Výstup sestavení je již dokončen" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Tento stavební výstup není plně přiřazen" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Zadejte množství pro výstup sestavení" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Celé množství požadované pro sledovatelné díly" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Je vyžadována celočíselná hodnota množství, protože kusovník obsahuje sledovatelné díly" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Sériová čísla" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Zadejte sériová čísla pro sestavení výstupů" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Lokace" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "Skladové umístění pro výstup sestavy" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Automaticky zvolit sériová čísla" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Automaticky přidělit požadované položky s odpovídajícími sériovými čísly" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "U sledovatelných dílů musí být uvedena sériová čísla" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Následující sériová čísla již existují nebo jsou neplatná" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Musí být uveden seznam výstupů sestavy" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Umístění zásob pro seškrábnuté výstupy" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Zahodit alokace" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Vyřadit všechny přidělené zásoby pro vyřazené výstupy" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Důvod vyřazení výstupu(ů) sestavy" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Umístění dokončených výstupů sestavy" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Stav" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Přijmout neúplné přidělení" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Dokončit výstupy pokud zásoby nebyly plně přiděleny" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "Spotřebovat přidělené zásoby" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "Spotřebovat všechny zásoby, které již byly přiděleny této sestavě" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Odstranit neúplné výstupy" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Odstranit všechny výstupy sestavy, které nebyly dokončeny" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Není povoleno" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Přijmout jako spotřebované touto objednávkou sestavy" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Uvolnit před dokončením této objednávky sestavy" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Nadměrně přidělené zásoby" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Jak chcete zacházet s extra skladovými položkami přiřazenými k objednávce na sestavu" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Některé skladové položky byly nadměrně přiděleny" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Přijmout nepřidělené" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Přijmout, že skladové položky nebyly plně přiřazeny k této objednávce sestavy" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Požadované zásoby nebyly plně přiděleny" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Přijmout neúplné" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Přijmout, že nebyl dokončen požadovaný počet výstupů sestavy" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Požadované množství sestavy nebylo dokončeno" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Objednávka sestavy má neúplné výstupy" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Linka sestavy" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Výstup sestavy" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Výstup sestavy musí odkazovat na stejnou sestavu" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Řádková položka sestavy" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part musí ukazovat na stejný díl jako objednávka sestavy" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Položka musí být skladem" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Dostupné množství ({q}) překročeno" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Pro přidělení sledovaných dílů musí být zadán výstup sestavy" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Výstup sestavy nelze zadat pro přidělení nesledovaných dílů" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Položky přidělení musí být poskytnuty" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Skladové místo, odkud se mají díly odebírat (ponechte prázdné, pokud chcete odebírat z libovolného místa)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Vynechat lokace" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Vyloučit skladové položky z tohoto vybraného umístění" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Zaměnitelné zásoby" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Skladové položky na více místech lze používat zaměnitelně" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Náhradní zásoby" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Povolit přidělování náhradních dílů" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Volitelné položky" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Přiřazení volitelných BOM položek k objednávce sestavy" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "Nepodařilo se spustit úlohu automatického přidělování" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Číslo dílu výrobce" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "ID dílu" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "IPN dílu" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Popis dílu" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Sledovatelné" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "BOM Položka" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "Přidělené zásoby" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "Na objednávku" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "Ve výrobě" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Dostupné zásoby" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Výroba" msgid "Cancelled" msgstr "Zrušeno" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Zobrazit QR kód" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Odstranit čárový kód" @@ -1715,14 +1786,14 @@ msgstr "Zásoby nebyly plně přiřazeny k této objednávce na sestavu" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Dokončené výstupy" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Dokončené výstupy" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Prodejní objednávka" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Vystavil" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Priorita" @@ -1804,8 +1875,8 @@ msgstr "Zdroj zásob" msgid "Stock can be taken from any available location." msgstr "Zásoby lze odebírat z jakéhokoli dostupného umístění." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Místo určení" @@ -1819,11 +1890,11 @@ msgstr "Přidělené díly" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Šarže" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Vytvořeno" @@ -1851,13 +1922,13 @@ msgstr "Dokončeno" msgid "Build not complete" msgstr "Sestava není dokončena" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Podřízené objednávky sestavy" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Přiděleit zásoby k sestavě" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Automaticky přiřadit" msgid "Manually allocate stock to build" msgstr "Manuálně přiřadit zásoby k sestavě" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Přidělit zásoby" @@ -1908,15 +1979,15 @@ msgstr "Vytvořit nový výstup sestavy" msgid "New Build Output" msgstr "Nový výstup sestavy" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Spotřebované zásoby" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Dokončené výstupy sestavy" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Dokončené výstupy sestavy" msgid "Attachments" msgstr "Přílohy" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Poznámky k sestavě" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "Přidělení dokončeno" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "Všechny řádky byly plně přiděleny" @@ -1952,6 +2023,16 @@ msgstr "Objednávka nové sestavy" msgid "Build Order Details" msgstr "Podrobnosti o objednávce sestavy" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Řádkové položky" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Neúplné výstupy" @@ -2156,8 +2237,8 @@ msgstr "Jak často aktualizovat směnné kurzy (pro vypnutí nastavte na nulu)" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "dny" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Povolit pole revize pro díl" #: common/models.py:1412 +msgid "Assembly Revision Only" +msgstr "" + +#: common/models.py:1413 +msgid "Only allow revisions for assembly parts" +msgstr "" + +#: common/models.py:1418 msgid "Allow Deletion from Assembly" msgstr "Povolit odstranění ze sestavy" -#: common/models.py:1413 +#: common/models.py:1419 msgid "Allow deletion of parts which are used in an assembly" msgstr "Povolit odstranění dílů, které jsou použity v sestavě" -#: common/models.py:1418 +#: common/models.py:1424 msgid "IPN Regex" msgstr "IPN Regex" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Regulární vzorec výrazu pro odpovídající IPN dílu" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Povolit duplicitní IPN" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Povolit více dílům sdílet stejný IPN" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Povolit editaci IPN" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Povolit změnu IPN při úpravách dílu" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Kopírovat data BOM dílu" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Kopírovat data BOM ve výchozím nastavení při duplikování dílu" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Kopírovat data parametrů dílu" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Kopírovat data parametrů ve výchozím nastavení při duplikování dílu" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Kopírovat zkušební data dílu" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Kopírovat testovací data ve výchozím nastavení při duplikování dílu" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Kopírovat šablony parametrů kategorie" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Kopírování šablon parametrů kategorie při vytváření dílu" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Kopírování šablon parametrů kategorie při vytváření dílu" msgid "Template" msgstr "Šablona" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Díly jsou ve výchozím nastavení šablony" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Sestava" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Díly lze ve výchozím nastavení sestavit z jiných komponentů" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Komponent" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Díly lze ve výchozím nastavení použít jako dílčí komponenty" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Možné zakoupit" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Díly jsou zakoupitelné ve výchozím nastavení" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Prodejné" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Díly jsou prodejné ve výchozím nastavení" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Díly jsou sledovatelné ve výchozím nastavení" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Nehmotné (virtuální)" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Díly jsou nehmotné (virtuální) ve výchozím nastavení" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Zobrazit Import v zobrazeních" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Zobrazit průvodce importem v některých zobrazeních dílu" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Zobrazit související díly" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Zobrazit související díly pro díl" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Počáteční údaje zásob" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Povolit vytvoření počátečního skladu při přidání nové části" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Počáteční údaje dodavatele" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Povolit vytvoření počátečních dat dodavatele při přidávání nového dílu" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Formát zobrazení jména dílu" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Formát pro zobrazení názvu dílu" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Výchozí ikona kategorie dílu" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Výchozí ikona kategorie dílu (prázdné znamená bez ikony)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Vynutit jednotky parametru" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "Pokud jsou uvedeny jednotky, musí hodnoty parametrů odpovídat zadaným jednotkám" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Minimální počet desetinných míst u cen" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Minimální počet desetinných míst k zobrazení u cenových údajů" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "Maximální počet desetinných míst u cen" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maximální počet desetinných míst k zobrazení u cenových údajů" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Použít ceny dodavatele" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Zahrnout cenová zvýhodnění dodavatelů do celkových cenových kalkulací" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Přepsání historie nákupu" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historické ceny nákupních objednávek mají přednost před cenovými zvýhodněními dodavatele" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Použít ceny skladových položek" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Použít ceny z ručně zadaných skladových údajů pro cenové kalkulace" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Stáří cen skladových položek" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Vyloučit skladové položky starší než tento počet dní z cenových kalkulací" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Použít cenu varianty" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Zahrnutí cen variant do celkových cenových kalkulací" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Pouze aktivní varianty" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Pro výpočet ceny varianty použijte pouze aktivní díly varianty" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Interval přestavby cen" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Počet dní před automatickou aktualizací cen dílů" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Interní ceny" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Povolit interní ceny pro díly" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Přepis interní ceny" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Pokud jsou k dispozici, interní ceny mají přednost před výpočty cenového rozpětí" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Povolit tisk štítků" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Povolit tisk štítků z webového rozhraní" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "DPI rozlišení štítků" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Rozlišení DPI při generování obrazových souborů, které se dodávají do zásuvných modulů pro tisk štítků" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Povolit reporty" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Povolit generování reportů" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Režim ladění chyb" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Generovat reporty v režimu ladění (HTML výstup)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "Zaznamenávat chyby reportů" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "Zaznamenávat chyby, které se vyskytnou při vytváření reportů" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Velikost stránky" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Výchozí velikost stránky pro PDF reporty" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Povolit testovací reporty" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Povolit generování zkušebních reportů" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Připojit testovací reporty" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Při tisku testovacího reportu, připojte kopii reportu k přidružené skladové položce" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Globálně unikátní sériová čísla" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "Sériová čísla pro skladové položky musí být globálně unikátní" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Automaticky vyplnit sériová čísla" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Automaticky vyplnit sériová čísla ve formulářích" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Odstranit vyčerpané zásoby" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "Určuje výchozí chování při vyčerpání zásoby položky" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Šablona kódu dávky" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Šablona pro generování výchozích kódů dávky pro skladové položky" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Expirace zásob" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Povolit funkci expirace zásob" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Prodat prošlé zásoby" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Povolit prodej prošlých zásob" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Čas stáří zásob" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Počet dnů, po které jsou skladové položky považovány za nevyužité před uplynutím doby expirace" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Sestavit prošlé zásoby" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Povolit sestavování s prošlými zásobami" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Kontrola vlastnictví zásob" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Umožnit kontrolu vlastnictví nad skladovými místy a položkami" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Výchozí ikona umístění zásob" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Výchozí ikona umístění zásob (prázdné znamená bez ikony)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Zobrazit nainstalované skladové položky" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "Zobrazit nainstalované skladové položky ve skladových tabulkách" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "Zkontrolovat BOM při instalaci položek" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Nainstalované skladové položky musí existovat v BOM pro nadřazený díl" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "Povolit převod mimo sklad" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Umožnit přesun skladových položek, které nejsou na skladě, mezi skladovými místy" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Referenční vzor objednávky sestavy" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Požadovaný vzor pro generování referenčního pole Objednávka sestavy" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "Vyžadovat odpovědného vlastníka" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "Ke každé objednávce musí být přiřazen odpovědný vlastník" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "Blokovat, dokud testy neprojdou" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Zabránit dokončení výstupů sestavy, dokud neprojdou všechny požadované testy" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Povolit vracení objednávek" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Povolit funkci vrácení objednávky v uživatelském rozhraní" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Referenční vzor návratové objednávky" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "Požadovaný vzor pro vygenerování referenčního pole Návratová objednávka" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Úprava dokončených návratových objednávek" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Umožnit úpravu návratových objednávek po jejich dokončení" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Referenční vzor prodejní objednávky" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Požadovaný vzor pro generování referenčního pole prodejní objednávky" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Výchozí přeprava prodejní objednávky" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Povolit vytvoření výchozí přepravy s prodejními objednávkami" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Úprava dokončených prodejních objednávek" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Umožnit úpravy prodejních objednávek po jejich odeslání nebo dokončení" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "Označit odeslané objednávky jako dokončené" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Prodejní objednávky označené jako odeslané se automaticky dokončí a obejdou stav „odesláno“" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Referenční vzor nákupní objednávky" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Požadovaný vzor pro generování referenčního pole nákupní objednávky" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Úprava dokončených nákupních objednávek" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Umožnit úpravy nákupních objednávek po jejich odeslání nebo dokončení" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "Automatické dokončování nákupních objednávek" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Automaticky označit nákupní objednávky jako kompletní, jakmile jsou přijaty všechny řádkové položky" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Povolit pole zapomenutého hesla" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Povolení funkce zapomenutého hesla na přihlašovacích stránkách" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Povolit registrace" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Povolit samoregistraci uživatelů na přihlašovacích stránkách" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "Povolit SSO" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "Povolit SSO na přihlašovacích stránkách" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "Povolit SSO registraci" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Povolit samoregistraci uživatelů prostřednictvím SSO na přihlašovacích stránkách" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Vyžadován e-mail" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Požadovat, aby uživatel při registraci zadal e-mail" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "Automaticky vyplnit SSO uživatele" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Automaticky vyplnit údaje o uživateli z údajů o účtu SSO" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "Mail dvakrát" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Při registraci dvakrát požádat uživatele o zadání e-mailu" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Heslo dvakrát" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Při registraci dvakrát požádat uživatele o heslo" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Povolené domény" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Omezit registraci na určité domény (oddělené čárkou a začínající @)" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Skupina při registraci" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Vynutit MFA" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Uživatelé musí používat vícefaktorové zabezpečení." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Zkontrolovat pluginy při spuštění" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Zkontrolujte, zda jsou při spuštění nainstalovány všechny pluginy - povolit v kontejnerových prostředích" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "Zkontrolovat aktualizace pluginů" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "Povolit pravidelné kontroly aktualizací nainstalovaných pluginů" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "Povolit integraci URL" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Povolit plug-inům přidávat trasy URL" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Povolit integraci navigace" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Povolit integrování pluginů do navigace" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "Povolit integraci aplikací" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Povolit pluginům přidávát aplikace" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Povolit integraci plánu" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Povolit pluginům spouštění naplánovaných úloh" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Povolit integraci událostí" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Povolit pluginům reagovat na interní události" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Povolit kódy projektů" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "Povolit kódy projektů pro sledování projektů" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Funkce inventury" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Povolit funkci inventury pro evidenci stavu zásob a výpočet hodnoty zásob" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "Vyloučit externí umístění" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Vyloučit skladové položky na externích místech z výpočtů inventury" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Perioda automatické inventury" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Počet dní mezi automatickým záznamem inventury (pro vypnutí nastavte nulu)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "Interval mazání reportů" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Reporty o inventuře se po určitém počtu dní vymažou" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "Zobrazit celá jména uživatelů" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "Zobrazit plná jména uživatelů namísto uživatelských jmen" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "Povolit data zkušební stanice" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "Povolit sběr dat ze zkušební stanice pro výsledky testů" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Klíč nastavení (musí být unikátní - rozlišuje malá a velká písmena" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Skrýt neaktivní díly" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "Skrýt neaktivní díly ve výsledcích zobrazených na domovské stránce" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Zobrazit odebírané díly" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Zobrazit odebírané díly na domovské stránce" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Zobrazit odebírané kategorie" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Zobrazit kategorie odebíraných dílů na hlavní stránce" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Zobrazit nejnovější díly" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Zobrazit nejnovější díly na domovské stránce" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "Zobrazit neplatné kusovníky (BOMy)" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Zobrazit kusovníky (BOMy), které čekají na ověření, na domovské stránce" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Zobrazit nedávné změny zásob" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Zobrazit nedávno změněné skladové položky na domovské stránce" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Zobrazit nízký stav zásob" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Zobrazit na domovské stránce položky s nízkou skladovou zásobou" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Zobrazit vyčerpané zásoby" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Zobrazit vyčerpané položky na domovské stránce" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Zobrazit potřebné zásoby" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Zobrazit skladové položky potřebné pro sestavy na domovské stránce" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Zobrazit expirované zásoby" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Zobrazit expirované skladové položky na domovské stránce" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Zobrazit neaktuální zásoby" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Zobrazit neaktuální skladové položky na domovské stránce" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Zobrazit nevyřízené sestavy" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Zobrazit nevyřízené sestavy na domovské stránce" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Zobrazit sestavy po splatnosti" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Zobrazit sestavy po splatnosti na domovské stránce" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Zobrazit nevyřízené PO" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Zobrazit nevyřízené PO na domovské stránce" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Zobrazit PO po splatnosti" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Zobrazit PO po splatnosti na domovské stránce" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Zobrazit nevyřízené SO" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Zobrazit nevyřízené SO na domovské stránce" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Zobrazit SO po splatnosti" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Zobrazit SO po splatnosti na domovské stránce" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "Zobrazit čekající zásilky SO" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "Zobrazit čekající zásilky SO na domovské stránce" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Zobrazit novinky" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Zobrazit novinky na domovské stránce" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Zobrazení štítků na řádku" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "Zobrazit štítky PDF v prohlížeči namísto stahování jako soubor" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Výchozí tiskárna štítků" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Konfigurovat tiskárnu štítků, která má být vybrána jako výchozí" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Zobrazení reportů na řádku" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "Zobrazit reporty PDF v prohlížeči namísto stahování jako soubor" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Hledat díly" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Zobrazit díly v náhledu hledání" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Hledat díly dodavatele" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Zobrazit díly dodavatele v náhledu hledání" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Vyhledávání dílů výrobce" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Zobrazit díly výrobce v náhledu hledání" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Skrýt neaktivní díly" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Vyloučené neaktivní části z okna náhledu vyhledávání" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Hledat kategorie" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Zobrazit kategorie dílů v náhledu hledání" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Hledat zásoby" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Zobrazit skladové položky v náhledu hledání" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Skrýt nedostupné skladové položky" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Vyloučit skladové položky, které nejsou dostupné z okna náhledu hledání" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Hledat umístění" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Zobrazit skladová umístění v náhledu hledání" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Hledat společnosti" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Zobrazit společnosti v náhledu hledání" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Hledat objednávky sestav" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Zobrazit objednávky sestav v náhledu hledání" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Hledat nákupní objednávky" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Zobrazit nákupní objednávky v náhledu hledání" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Vyloučit neaktivní nákupní objednávky" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Vyloučit neaktivní nákupní objednávky z okna náhledu vyhledávání" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Hledat prodejní objednávky" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Zobrazit prodejní objednávky v náhledu hledání" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Vyloučit neaktivní prodejní objednávky" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Vyloučit neaktivní prodejní objednávky z okna náhledu vyhledávání" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Vyhledávání vrácených objednávek" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "Zobrazit vrácené objednávky v okně náhledu vyhledávání" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "Vyloučit neaktivní vrácené objednávky" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "Vyloučit neaktivní vrácené objednávky z okna náhledu vyhledávání" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Náhled výsledků vyhledávání" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "Počet výsledků, které se mají zobrazit v každé části okna náhledu vyhledávání" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Regex hledání" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "Povolit regulární výrazy ve vyhledávacích dotazech" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "Vyhledávání celého slova" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "Vyhledávací dotazy vracejí výsledky pro shody celých slov" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Zobrazit množství ve formulářích" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Zobrazit dostupné množství dílů v některých formulářích" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "Klávesa Escape zavře formuláře" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "Zavřít modální formuláře pomocí klávesy escape" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Pevná navigační lišta" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "Pozice navigační lišty je pevně nastavena na horní okraj obrazovky" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Formát data" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Preferovaný formát pro zobrazení datumů" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Plánování dílů" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Zobrazit informace o plánování dílů" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Inventura dílu" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Zobrazit informace o skladových zásobách dílů (pokud je povolena funkce inventury)" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Délka textu v tabulce" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "Maximální délka textu v zobrazeních tabulek" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "Přijímat zprávy o chybách" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "Dostávat oznámení o systémových chybách" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "Poslední použité tiskárny" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "Uložte poslední použité tiskárny pro uživatele" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Uživatel" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "Množství cenové slevy" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Cena" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "Jednotková cena při stanoveném množství" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Koncový bod" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "Koncový bod, ve kterém je tento webhook přijímán" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "Název tohoto webhooku" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "Je tento webhook aktivní" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "Token" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Token pro přístup" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Tajný klíč" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Sdílený tajný klíč pro HMAC" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "ID zprávy" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Unikátní identifikátor pro tuto zprávu" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Hostitel" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Hostitel, od kterého byla tato zpráva přijata" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Záhlaví" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Záhlaví této zprávy" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Tělo" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Tělo zprávy" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "Koncový bod, na kterém byla zpráva přijata" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Pracoval na" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "Byla práce na této zprávě dokončena?" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "ID" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Název" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Odkaz" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Zveřejněno" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Autor" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Souhrn" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Přečteno" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "Byla tato novinka přečtena?" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "Byla tato novinka přečtena?" msgid "Image" msgstr "Obrazek" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Soubor obrázku" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "Cílový typ modelu pro tento obrázek" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "Cílové ID modelu pro tento obrázek" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "Název jednotky musí být platný identifikátor" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "Název jednotky" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "Symbol" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "Volitelný symbol jednotky" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Definice" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "Definice jednotky" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Příloha" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Chybějící soubor" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Chybějící externí odkaz" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Vyberte soubor k přiložení" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Komentář" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "Komentář přílohy" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "Datum nahrání" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "Datum, kdy byl soubor nahrán" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "Velikost souboru" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "Velikost souboru v bytech" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "Uveden neplatný typ modelu pro přílohu" @@ -4139,26 +4228,26 @@ msgstr "Doručovací poznámky pro interní použití" msgid "Link to address information (external)" msgstr "Odkaz na informace o adrese (externí)" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Výrobce dílu" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Základní díl" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Zvolte díl" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Zvolte díl" msgid "Manufacturer" msgstr "Výrobce" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Vyberte výrobce" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "MPN" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "URL pro odkaz na díl externího výrobce" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "Popis dílu výrobce" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Název parametru" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Hodnota" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Hodnota parametru" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Jednotky" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Jednotky parametru" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Díl dodavatele" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "Jednotky balení musí být kompatibilní s jednotkami základních dílů" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "Jednotky balení musí být větší než nula" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "Odkazovaný díl výrobce musí odkazovat na stejný základní díl" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Dodavatel" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Vyberte dodavatele" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Skladová evidence dodavatele" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "Je tento díl dodavatele aktivní?" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Vyberte díl výrobce" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "Adresa URL pro odkaz na externí díl dodavatele" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "Popis dílu dodavatele" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Poznámka" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "základní cena" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimální poplatek (např. poplatek za skladování)" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Balení" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Balení dílu" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Počet kusů v balení" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Celkové množství dodávané v jednom balení. Pro jednotlivé položky ponechte prázdné." -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "více" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Objednat více" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "Množství dostupné od dodavatele" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Dostupnost aktualizována" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "Datum poslední aktualizace údajů o dostupnosti" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "Výchozí měna používaná pro tohoto dodavatele" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "Skladem" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Neaktivní" @@ -4430,16 +4526,16 @@ msgstr "Stáhnout obrázek z URL" msgid "Delete image" msgstr "Smazat obrázek" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Zákazník" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "Odstranit obrázek" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "Odstranit přidružený obrázek z této společnosti" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Odstranit" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "Nahrát obrázek" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "Stáhnout obrázek" @@ -4628,7 +4724,7 @@ msgstr "Odstranit díl výrobce" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Interní díl" @@ -4638,7 +4734,7 @@ msgstr "Nejsou k dispozici žádné informace o výrobci" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Parametry" msgid "New Parameter" msgstr "Nový parametr" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "Přidat parametr" @@ -4724,12 +4824,12 @@ msgstr "Vymazat dodavatele dílu" msgid "No supplier information available" msgstr "Nejsou k dispozici žádné informace o dodavateli" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "Číslo zboží (SKU)" @@ -4744,7 +4844,7 @@ msgstr "Vytvořit novou položku skladu" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Nová skladová položka" @@ -4762,29 +4862,33 @@ msgstr "Informace o cenách" msgid "Add Price Break" msgstr "Přidat cenovou slevu" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "QR kód dílu dodavatele" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "Propojit čárový kód s dílem dodavatele" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "Aktualizovat dostupnost dílu" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Skladové položky" @@ -4822,83 +4926,91 @@ msgstr "Umístěno" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "Kopie" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "Počet kopií, které se mají tisknout pro každý štítek" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "Připojeno" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Neznámý" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "Tisk" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "Žádná média" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "Odpojeno" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "Tiskárna štítků" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "Přímo vytisknout štítky pro různé položky." -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "Umístění tiskárny" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "Určení rozsahu tiskárny na konkrétní místo" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Společnost, od které se položky objednávají" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Reference dodavatele" @@ -5207,15 +5335,15 @@ msgstr "Referenční kód objednávky dodavatele" msgid "received by" msgstr "přijal" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Datum vystavení" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Datum vystavení objednávky" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Datum dokončení objednávky" @@ -5223,501 +5351,501 @@ msgstr "Datum dokončení objednávky" msgid "Part supplier must match PO supplier" msgstr "Dodavatel dílu se musí shodovat s dodavatelem PO" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "Množství musí být kladné" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Společnost, jíž se položky prodávají" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Reference zákazníka " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "Referenční kód objednávky zákazníka" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Datum odeslání" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "odesláno společností" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "Objednávka je již dokončena" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "Objednávka je již zrušena" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "Pouze otevřená objednávka může být označena jako kompletní" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Objednávku nelze dokončit, protože dodávky jsou nekompletní" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "Objednávka nemůže být dokončena, protože jsou neúplné řádkové položky" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Množství položky" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "Odkaz na řádkovou položku" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Poznámky k řádkovým položkám" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Cílové datum pro tuto řádkovou položku (pro použití cílového data z objednávky ponechte prázdné)" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "Popis řádkové položky (nepovinné)" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Kontext" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "Dodatečný kontext pro tento řádek" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Cena za jednotku" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "Dodavatelský díl musí odpovídat dodavateli" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "smazáno" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Díl dodavatele" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Doručeno" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Počet přijatých položek" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Nákupní cena" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Jednotková nákupní cena" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Kde si kupující přeje, aby byla tato položka uložena?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtuální díl nelze přiřadit k prodejní objednávce" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "K prodejní objednávce lze přiřadit pouze prodejné díly" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Prodejní cena" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Jednotková prodejní cena" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Odesláno" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Odeslané množství" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Datum odeslání" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Datum doručení" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "Datum doručení zásilky" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Kontroloval(a)" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Uživatel, který zkontroloval tuto zásilku" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Doprava" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Číslo zásilky" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Sledovací číslo" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Informace o sledování zásilky" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Číslo faktury" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Referenční číslo přiřazené faktury" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Zásilka již byla odeslána" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "Zásilka nemá žádné přidělené skladové položky" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "Zásobní položka nebyla přiřazena" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Nelze přidělit skladovou položku na řádek s jiným dílem" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Nelze přidělit skladovou položku na řádek bez dílu" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Přidělené množství nesmí překročit množství zásob" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Množství musí být 1 pro serializovanou skladovou položku" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "Prodejní objednávka neodpovídá zásilce" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "Zásilka neodpovídá prodejní objednávce" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Řádek" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "Odkaz na zásilku z prodejní objednávky" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Položka" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Vyberte skladovou položku pro přidělení" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Zadejte množství pro přidělení zásob" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "Reference návratové objednávky" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "Společnost, od které se vrací položky" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "Stav návratové objednávky" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "K návratové objednávce lze přiřadit pouze serializované položky" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "Vyberte položku pro vrácení od zákazníka" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "Datum přijetí" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "Datum přijetí této vrácené položky" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "Výsledek" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "Výsledky pro tuto položku" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "Náklady spojené s návratem nebo opravou této položky" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Řádkové položky" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "Dokončené řádky" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "Objednávku nelze zrušit" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "Povolit uzavření objednávky s neúplnými řádkovými položkami" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "Objednávka má nedokončené řádkové položky" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "Objednávka není otevřena" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "Automatická cena" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "Automaticky vypočítat nákupní cenu na základě údajů o dílech dodavatele" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Měna nákupní ceny" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "Sloučit položky" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "Sloučit položky se stejným dílem, místem určení a cílovým datem do jedné řádkové položky" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Interní číslo dílu" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "Musí být uveden díl dodavatele" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "Objednávka musí být zadána" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "Dodavatel musí odpovídat objednávce" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "Objednávka musí odpovídat dodavateli" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Řádková položka" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "Řádková položka neodpovídá nákupní objednávce" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Vyberte cílové umístění pro přijaté položky" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "Zadat kód dávky pro příchozí položky skladu" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Zadat sériová čísla pro příchozí skladové položky" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Čárový kód" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "Naskenovaný čárový kód" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Tento čárový kód se již používá" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "U sledovatelných dílů musí být uvedeno celočíselné množství" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "Musí být uvedeny řádkové položky" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "Místo určení musí být specifikováno" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "Hodnoty dodaných čárových kódů musí být unikátní" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "ID dílu" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Popis dílu" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Díly" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Kategorie dílu" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Kategorie dílů" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Výchozí umístění dílů v této kategorii" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Díly nesmějí být přímo zařazeny do strukturované kategorie, ale mohou být zařazeny jako podkategorie." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "Výchozí klíčová slova pro díly v této kategorii" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Název dílu" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Kategorie dílu" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "ID dílu nebo název dílu" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "Jedinečná hodnota ID dílu" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "Hodnota IPN dílu" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Vyberte nadřazený díl" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "Aktualizovat díly" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "Aktualizovat cenu pro díl" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Pro data čárového kódu byla nalezena shoda" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "V karanténě" msgid "Legacy stock tracking entry" msgstr "Původní položka sledování zásob" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Položka zásob vytvořena" @@ -9880,7 +10027,7 @@ msgstr "Rozdělit od nadřazené položky" msgid "Split child item" msgstr "Rozdělit podřazený předmět" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Sloučené položky zásob" @@ -9900,7 +10047,7 @@ msgstr "Výstup objednávky sestavení dokončen" msgid "Build order output rejected" msgstr "Výstup objednávky sestavení byl odmítnut" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Spotřebováno podle objednávky" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Sestavení" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Odstranit" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "Domovská stránka" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Potvrdit" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po index 87c2aabf88..f09572f176 100644 --- a/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/da/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Danish\n" "Language: da_DK\n" @@ -56,26 +56,29 @@ msgstr "Fejloplysninger kan findes i admin panelet" msgid "Enter date" msgstr "Angiv dato" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Bemærkninger" @@ -132,7 +135,7 @@ msgstr "Det angivne e-mail domæne er ikke godkendt." msgid "Registration is disabled." msgstr "Registrering er deaktiveret." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Ugyldigt antal angivet" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Angivet URL er ikke en gyldig billedfil" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgarsk" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Tjekkisk" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Dansk" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Tysk" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Græsk" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Engelsk" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spansk" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spansk (Mexikansk)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Persisk" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finsk" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Fransk" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebraisk" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Ungarsk" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italiensk" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japansk" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Koreansk" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Hollandsk" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norsk" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polsk" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugisisk" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugisisk (Brasilien)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Russisk" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovensk" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Serbisk" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Svensk" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thailandsk" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Tyrkisk" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamesisk" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Kinesisk (forenklet)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Kinesisk (traditionelt)" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "Ugyldigt valg" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Ugyldigt valg" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Navn" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Navn" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Beskrivelse" @@ -464,8 +475,8 @@ msgstr "Beskrivelse" msgid "Description (optional)" msgstr "Beskrivelse (valgfri)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Sti" @@ -501,12 +512,12 @@ msgstr "Serverfejl" msgid "An error has been logged by the server." msgstr "En fejl blev logget af serveren." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Skal være et gyldigt tal" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "Ugyldig værdi" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Datafil" @@ -651,7 +662,7 @@ msgstr "URL til ekstern billedfil" msgid "Downloading images from remote URL is not enabled" msgstr "Download af billeder fra ekstern URL er ikke aktiveret" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Kontrol af baggrundstjeneste mislykkedes" @@ -711,48 +722,48 @@ msgstr "Systemoplysninger" msgid "About InvenTree" msgstr "Om InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Produktion skal anulleres, før den kan slettes" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Forbrugsvare" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Valgfri" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Sporet" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Allokeret" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Tilgængelig" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Produktionsordre" @@ -778,72 +789,72 @@ msgstr "Produktionsordre" msgid "Build Orders" msgstr "Produktionsordrer" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Ugyldigt valg for overordnet produktion" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Byggeordre enhed kan ikke ændres" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Produktionsordre reference" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Overordnet produktion" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Produktionsordre som er tildelt denne produktion" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Produktionsordre som er tildelt denne produktion" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Del" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Vælg dele til produktion" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Salgsordrereference" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Salgsordre, som er tildelt denne produktion" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Kilde Lokation" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Vælg lokation for lager, som skal benyttes til denne produktion (lad feltet stå tomt for at benytte vilkårligt lager)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Destinations Placering" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Vælg placering, hvor de færdige elementer vil blive gemt" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Produktions antal" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Antal lagervarer som skal produceres" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Afsluttede elementer" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Antal lagervarer som er færdiggjort" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Produktions Status" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Produktions statuskode" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Batch Kode" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Batch kode til dette produktions output" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Oprettelsesdato" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Projekteret afslutningsdato" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Dato for afslutning" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "udført af" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Udstedt af" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Bruger som udstedte denne byggeordre" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Ansvarlig" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Bruger eller gruppe ansvarlig for denne byggeordre" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Ekstern link" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Link til ekstern URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Bygge Prioritet" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Prioritet af denne byggeordre" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Prioritet af denne byggeordre" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Bygningsordre {build} er fuldført" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "En byggeordre er fuldført" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Ikke tilladt" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Accepter som forbrugt af denne byggeordre" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Accepter Ikke tildelt" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepter at lagervarer ikke er fuldt tildelt til denne byggeordre" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Accepter ufuldført" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Bygge linje" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Produktion" msgid "Cancelled" msgstr "Annulleret" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Vis QR-kode" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Bruger" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Vedhæftning" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Manglende fil" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Manglende eksternt link" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Vælg fil, der skal vedhæftes" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Kommentar" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "Placeret" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Afsendt" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "I karantæne" msgid "Legacy stock tracking entry" msgstr "Forældet lager sporings post" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Lager-element oprettet" @@ -9880,7 +10027,7 @@ msgstr "Opdel fra overordnet element" msgid "Split child item" msgstr "Opdel underordnet element" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Flettede lagervarer" @@ -9900,7 +10047,7 @@ msgstr "Byggeorder output fuldført" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Brugt efter byggeordre" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po index 09ff7930ca..4ca44d3a74 100644 --- a/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -56,26 +56,29 @@ msgstr "Fehlerdetails finden Sie im Admin-Panel" msgid "Enter date" msgstr "Datum eingeben" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Notizen" @@ -132,7 +135,7 @@ msgstr "Die angegebene E-Mail-Domain ist nicht freigegeben." msgid "Registration is disabled." msgstr "Registrierung ist deaktiviert." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Keine gültige Menge" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Angegebene URL ist kein gültiges Bild" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgarisch" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Tschechisch" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Dänisch" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Deutsch" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Griechisch" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Englisch" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spanisch" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spanisch (Mexikanisch)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Persisch" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Beenden" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Französisch" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebräisch" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hinduistisch" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Ungarisch" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italienisch" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japanisch" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Koreanisch" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Lettisch" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Niederländisch" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norwegisch" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polnisch" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugiesisch" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugiesisch (Brasilien)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "Rumänisch" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Russisch" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Slowakisch" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slowenisch" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Serbisch" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Schwedisch" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thailändisch" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Türkisch" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Ukrainisch" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamesisch" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Chinesisch (Vereinfacht)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Chinesisch (Traditionell)" @@ -403,9 +414,9 @@ msgstr "Doppelte Namen können nicht unter dem selben Elternteil existieren" msgid "Invalid choice" msgstr "Ungültige Auswahl" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Ungültige Auswahl" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Name" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Name" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Beschreibung" @@ -464,8 +475,8 @@ msgstr "Beschreibung" msgid "Description (optional)" msgstr "Beschreibung (optional)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Pfad" @@ -501,12 +512,12 @@ msgstr "Serverfehler" msgid "An error has been logged by the server." msgstr "Ein Fehler wurde vom Server protokolliert." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Muss eine gültige Nummer sein" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "Administrator" msgid "Is this user a superuser" msgstr "Ist dieser Benutzer ein Adminstrator" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Willkommen bei InvenTree" msgid "Invalid value" msgstr "Ungültiger Wert" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Datendatei" @@ -651,7 +662,7 @@ msgstr "URL der Remote-Bilddatei" msgid "Downloading images from remote URL is not enabled" msgstr "Das Herunterladen von Bildern von Remote-URLs ist nicht aktiviert" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Hintergrund-Prozess-Kontrolle fehlgeschlagen" @@ -711,48 +722,48 @@ msgstr "Systeminformationen" msgid "About InvenTree" msgstr "Über InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Bauauftrag muss abgebrochen werden, bevor er gelöscht werden kann" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Verbrauchsmaterial" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Optional" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Nachverfolgt" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Zugeordnet" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Verfügbar" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Bauauftrag" @@ -778,72 +789,72 @@ msgstr "Bauauftrag" msgid "Build Orders" msgstr "Bauaufträge" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Ungültige Wahl für übergeordneten Bauauftrag" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "Verantwortlicher Benutzer oder Gruppe muss angegeben werden" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Teil in Bauauftrag kann nicht geändert werden" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Bauauftragsreferenz" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referenz" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Kurze Beschreibung des Baus (optional)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Eltern-Bauauftrag" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Teil" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Teil für den Bauauftrag wählen" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Auftrag Referenz" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Quell-Lagerort" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Entnahme-Lagerort für diesen Bauauftrag wählen (oder leer lassen für einen beliebigen Lagerort)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Ziel-Lagerort" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Lagerort an dem fertige Objekte gelagert werden auswählen" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Bau-Anzahl" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Anzahl der zu bauenden Lagerartikel" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Fertiggestellte Teile" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Anzahl der fertigen Lagerartikel" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Bauauftrags-Status" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Bau-Statuscode" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Losnummer" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Losnummer für dieses Endprodukt" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Erstelldatum" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "geplantes Fertigstellungsdatum" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Zieldatum für Bauauftrag-Fertigstellung." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Fertigstellungsdatum" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "Fertiggestellt von" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Aufgegeben von" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Nutzer der diesen Bauauftrag erstellt hat" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Verantwortlicher Benutzer" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Benutzer oder Gruppe verantwortlich für diesen Bauauftrag" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Externer Link" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Link zu einer externen URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Bauauftrags-Priorität" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Priorität dieses Bauauftrags" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Priorität dieses Bauauftrags" msgid "Project Code" msgstr "Projektcode" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Projektcode für diesen Auftrag" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "Fehler beim Abladen der Aufgabe, um die Build-Allokation abzuschließen" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Bauauftrag {build} wurde fertiggestellt" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Ein Bauauftrag wurde fertiggestellt" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "kein Endprodukt angegeben" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Endprodukt bereits hergstellt" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Endprodukt stimmt nicht mit dem Bauauftrag überein" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Menge kann nicht größer als die Ausgangsmenge sein" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Build Ausgabe {serial} hat nicht alle erforderlichen Tests bestanden" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Objekt bauen" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Objekt bauen" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Anzahl" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Erforderliche Menge für Auftrag" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Bauauftragsposition muss ein Endprodukt festlegen, da der übergeordnete Teil verfolgbar ist" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Zugewiesene Menge ({q}) darf nicht verfügbare Menge ({a}) übersteigen" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "BestandObjekt ist zu oft zugewiesen" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Reserviermenge muss größer null sein" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Ausgewählter Lagerbestand stimmt nicht mit BOM-Linie überein" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Lagerartikel" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Quell-Lagerartikel" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Anzahl an Lagerartikel dem Bauauftrag zuweisen" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Installiere in" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Ziel-Lagerartikel" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Name des Teils" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Endprodukt" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Endprodukt stimmt nicht mit übergeordnetem Bauauftrag überein" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Endprodukt entspricht nicht dem Teil des Bauauftrags" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Dieses Endprodukt wurde bereits fertiggestellt" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Menge der Endprodukte angeben" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Ganzzahl für verfolgbare Teile erforderlich" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Seriennummer" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Seriennummer für dieses Endprodukt eingeben" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Lagerort" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "Lagerort für Bauprodukt" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Seriennummern automatisch zuweisen" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Benötigte Lagerartikel automatisch mit passenden Seriennummern zuweisen" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "Seriennummern müssen für nachverfolgbare Teile angegeben werden" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Die folgenden Seriennummern existieren bereits oder sind ungültig" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Eine Liste von Endprodukten muss angegeben werden" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Lagerort für ausgemusterte Ausgänge" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Zuteilungen verwerfen" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Bestandszuteilung für ausgemusterte Endprodukte verwerfen" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Grund für das Verwerfen des Bauauftrages/der Bauaufträge" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Lagerort für fertige Endprodukte" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Status" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Unvollständige Zuweisung akzeptieren" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Endprodukte fertigstellen, auch wenn Bestand nicht fertig zugewiesen wurde" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "Zugewiesen Bestand verbrauchen" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "Verbrauche alle Bestände, die diesem Bauauftrag bereits zugewiesen wurden" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Unfertige Endprodukte entfernen" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Lösche alle noch nicht abgeschlossenen Endprodukte" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Nicht erlaubt" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Als von diesem Bauauftrag verbraucht setzen" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Bestandszuordnung vor dem Abschluss dieses Bauauftrags freigeben" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Überbelegter Lagerbestand" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Wie sollen zusätzliche Lagerbestandteile, die dem Bauauftrag zugewiesen wurden, behandelt werden" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Der Bestand einiger Lagerartikel ist überbelegt" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Nicht zugewiesene akzeptieren" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Akzeptieren, dass Lagerartikel diesem Bauauftrag nicht vollständig zugewiesen wurden" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Unvollständig Zuweisung akzeptieren" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Akzeptieren, dass die erforderliche Anzahl der Bauaufträge nicht abgeschlossen ist" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Bauauftrag hat unvollständige Aufbauten" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Bauauftragsposition" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Endprodukt" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Bauauftragspositionsartikel" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Teil muss auf Lager sein" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Verfügbare Menge ({q}) überschritten" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Für Zuweisung von verfolgten Teilen muss ein Endprodukt angegeben sein" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Endprodukt kann bei Zuweisung nicht-verfolgter Teile nicht angegeben werden" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Zuweisungen müssen angegeben werden" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lagerort, von dem Teile bezogen werden sollen (leer lassen, um sie von jedem Lagerort zu nehmen)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Lagerort ausschließen" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Lagerartikel vom ausgewählten Ort ausschließen" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Wechselbares Lagerbestand" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Lagerartikel an mehreren Standorten können austauschbar verwendet werden" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Ersatzbestand" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Zuordnung von Ersatzteilen erlauben" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Optionale Positionen" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Optionale Stücklisten-Positionen dem Bauauftrag hinzufügen" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "Fehler beim Starten der automatischen Zuweisung" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Hersteller-Teilenummer" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "Ortsname" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "Teil-ID" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "Teil IPN" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Seriennummer" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "Zugewiesene Menge" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "Verfügbare Menge" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Beschreibung des Teils" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Nachverfolgbar" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "Vererbt" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Varianten zulassen" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Stücklisten-Position" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "Zugewiesener Bestand" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "Bestellt" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "In Produktion" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Verfügbarer Bestand" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" -msgstr "" +msgstr "Verfügbares Ersatzmaterial" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "Externes Lager" @@ -1581,7 +1652,7 @@ msgstr "in Arbeit" msgid "Cancelled" msgstr "Storniert" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "QR-Code anzeigen" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Barcode abhängen" @@ -1715,14 +1786,14 @@ msgstr "Bestand wurde Bauauftrag noch nicht vollständig zugewiesen" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Fertiggestellte Endprodukte" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Fertiggestellte Endprodukte" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Auftrag" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Aufgegeben von" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Priorität" @@ -1804,8 +1875,8 @@ msgstr "Ausgangs-Lager" msgid "Stock can be taken from any available location." msgstr "Bestand kann jedem verfügbaren Lagerort entnommen werden." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Ziel-Lager" @@ -1819,11 +1890,11 @@ msgstr "Zugewiesene Teile" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Losnummer" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Erstellt" @@ -1851,13 +1922,13 @@ msgstr "Fertig" msgid "Build not complete" msgstr "Bauauftrag ist nicht vollständig" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Unter-Bauaufträge" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Bestand Bauauftrag zuweisen" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Automatisch zuweisen" msgid "Manually allocate stock to build" msgstr "Lagerartikel manuell dem Bauauftrag zuweisen" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Bestand zuweisen" @@ -1908,15 +1979,15 @@ msgstr "Neues Endprodukt anlegen" msgid "New Build Output" msgstr "Neues Endprodukt" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Verbrauchte Bestände" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Fertiggestellte Endprodukte" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Fertiggestellte Endprodukte" msgid "Attachments" msgstr "Anhänge" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Bauauftrags-Notizen" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "Zuordnung abgeschlossen" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "Alle Zeilen wurden vollständig zugewiesen" @@ -1952,6 +2023,16 @@ msgstr "Neuer Bauauftrag" msgid "Build Order Details" msgstr "Bauauftragdetails" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Positionen" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Unfertige Endprodukte" @@ -2156,8 +2237,8 @@ msgstr "Wie oft Wechselkurse aktualisiert werden sollen (auf Null zum Deaktivier #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "Tage" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Revisions-Feld für Artikel aktivieren" #: common/models.py:1412 +msgid "Assembly Revision Only" +msgstr "" + +#: common/models.py:1413 +msgid "Only allow revisions for assembly parts" +msgstr "" + +#: common/models.py:1418 msgid "Allow Deletion from Assembly" msgstr "Löschen aus Baugruppe erlauben" -#: common/models.py:1413 +#: common/models.py:1419 msgid "Allow deletion of parts which are used in an assembly" msgstr "Erlaube das Löschen von Teilen, die in einer Baugruppe verwendet werden" -#: common/models.py:1418 +#: common/models.py:1424 msgid "IPN Regex" msgstr "IPN Regex" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "RegEx Muster für die Zuordnung von Teil-IPN" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Mehrere Artikel mit gleicher IPN erlaubt" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Mehrere Artikel mit gleicher IPN erlaubt" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Ändern von IPN erlaubt" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Ändern der IPN während des Bearbeiten eines Teils erlaubt" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Teil-Stückliste kopieren" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Stückliste von Teil kopieren wenn das Teil dupliziert wird " -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Teil-Parameter kopieren" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Parameter-Daten für dieses Teil kopieren wenn das Teil dupliziert wird" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Teil-Testdaten kopieren" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Test-Daten für dieses Teil kopieren wenn das Teil dupliziert wird" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Kategorie-Parametervorlage kopieren" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" msgid "Template" msgstr "Vorlage" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Teile sind standardmäßig Vorlagen" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Baugruppe" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Komponente" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Teile können standardmäßig in Baugruppen benutzt werden" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Kaufbar" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Artikel sind grundsätzlich kaufbar" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Verkäuflich" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Artikel sind grundsätzlich verkaufbar" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Artikel sind grundsätzlich verfolgbar" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Virtuell" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Teile sind grundsätzlich virtuell" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Import in Ansichten anzeigen" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Importassistent in einigen Teil-Ansichten anzeigen" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Verwandte Teile anzeigen" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Verwandte Teile eines Teils anzeigen" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Initialer Lagerbestand" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Erstellen von Lagerbestand beim Hinzufügen eines neuen Teils erlauben" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Initiale Lieferantendaten" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Erstellen von Lieferantendaten beim Hinzufügen eines neuen Teils erlauben" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Anzeigeformat für Teilenamen" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Format für den Namen eines Teiles" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Standardsymbol der Teilkategorie" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Standardsymbol der Teilkategorie (leer bedeutet kein Symbol)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Parameter Einheiten durchsetzen" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "Wenn Einheiten angegeben werden, müssen die Parameterwerte mit den angegebenen Einheiten übereinstimmen" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Dezimalstellen für minimalen Preis" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Mindestanzahl der Dezimalstellen bei der Darstellung der Preisdaten" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "Dezimalstellen für maximalen Preis" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maximale Anzahl der Dezimalstellen bei der Darstellung der Preisdaten" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Zulieferer-Preise verwenden" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Lieferanten-Staffelpreise in die Gesamt-Preisberechnungen einbeziehen" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Kaufverlauf überschreiben" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historische Bestellungspreise überschreiben die Lieferanten-Staffelpreise" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Lagerartikel-Preis verwenden" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Preise aus manuell eingegebenen Lagerdaten für Preisberechnungen verwenden" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Lagerartikelpreis Alter" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Lagerartikel, die älter als diese Anzahl an Tagen sind, von der Preisberechnung ausschließen" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Variantenpreise verwenden" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Variantenpreise in die Gesamt-Preisberechnungen einbeziehen" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Nur aktive Varianten" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Nur aktive Variantenteile zur Berechnung der Variantenbepreisung verwenden" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Intervall für Neuberechnung von Preisen" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Anzahl der Tage bis die Teile-Preisberechnungen automatisch aktualisiert werden" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Interne Preise" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Interne Preise für Teile aktivieren" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Interne Preisüberschreibung" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Falls verfügbar, überschreiben interne Preise Preispannenberechnungen" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Labeldruck aktivieren" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Labeldruck über die Website aktivieren" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Label Bild DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI-Auflösung bei der Erstellung von Bilddateien für Etikettendruck-Plugins" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Berichte aktivieren" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Berichterstellung aktivieren" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Entwickler-Modus" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Berichte im Entwickler-Modus generieren (als HTML)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "Berichtsfehler protokollieren" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "Fehler, die beim Erstellen von Berichten auftreten, protokollieren" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Seitengröße" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Standardseitenformat für PDF-Bericht" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Testberichte aktivieren" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Erstellung von Test-Berichten aktivieren" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Testberichte anhängen" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Beim Drucken eines Testberichts dem zugehörigen Lagerbestand eine Kopie des Testberichts beifügen" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Global einzigartige Seriennummern" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "Seriennummern für Lagerartikel müssen global eindeutig sein" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Seriennummern automatisch ausfüllen" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Seriennummern in Formularen automatisch ausfüllen" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Erschöpften Lagerartikel löschen" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "Legt das Standardverhalten fest, wenn ein Lagerartikel aufgebraucht ist" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Losnummer Vorlage" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Vorlage für die Generierung von Standard-Losnummern für Lagerbestände" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Bestands-Ablauf" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Ablaufen von Bestand ermöglichen" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Abgelaufenen Bestand verkaufen" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Verkauf von abgelaufenem Bestand erlaubt" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Bestands-Stehzeit" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Anzahl an Tagen, an denen Bestand als abgestanden markiert wird, bevor sie ablaufen" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Abgelaufenen Bestand verbauen" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Verbauen von abgelaufenen Bestand erlaubt" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Bestands-Eigentümerkontrolle" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Eigentümerkontrolle für Lagerorte und Teile aktivieren" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Standardsymbol für Lagerort" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Standardsymbol für Lagerstandort (leer bedeutet kein Symbol)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Zeige installierte Lagerartikel" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "Anzeige der installierten Lagerartikel in Bestandstabellen" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "Prüfe BOM bei der Installation von Elementen" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Installierte Lagerbestandteile müssen im BOM für den übergeordneten Teil vorhanden sein" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "Erlaube Verschieben von \"nicht auf Lager\" Bestand" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Lagerartikel, die nicht auf Lager sind, können zwischen Lagerstandorten übertragen werden" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Bauauftragsreferenz-Muster" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bauaufträge" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "Verantwortlicher Besitzer erforderlich" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "Jeder Bestellung muss ein verantwortlicher Besitzer zugewiesen werden" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "Blockieren bis Test bestanden" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Verhindert die Fertigstellung bis alle erforderlichen Tests bestanden sind" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Rücksendungen aktivieren" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Aktivieren der Rücksendung-Funktion in der Benutzeroberfläche" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Referenz Muster für Rücksendungen" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Rücksendungen" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Abgeschlossene Rücksendungen bearbeiten" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Bearbeitung von Rücksendungen nach Abschluss erlauben" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Auftragsreferenz-Muster" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Aufträge" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Auftrag Standardsendung" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Erstelle eine Standardsendung für Aufträge" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Abgeschlossene Aufträge bearbeiten" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Bearbeitung von Aufträgen nach Versand oder Abschluss erlauben" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "Versendete Bestellungen als abgeschlossen markieren" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "Als versendet markierte Aufträge werden automatisch abgeschlossen und überspringen den Status \"Versandt\"" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Bestellungsreferenz-Muster" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Benötigtes Muster für die Generierung des Referenzfeldes für Bestellungen" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Abgeschlossene Einkaufsaufträge bearbeiten" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Bearbeitung von Einkaufsaufträgen nach Versand oder Abschluss erlauben" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "Bestellungen automatisch abschließen" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Bestellung automatisch als abgeschlossen markieren, wenn der Empfang aller Artikel bestätigt wurde" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Passwort vergessen aktivieren" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Passwort-vergessen-Funktion auf den Anmeldeseiten aktivieren" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Registrierung erlauben" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Selbstregistrierung für Benutzer auf den Anmeldeseiten aktivieren" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "SSO aktivieren" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "SSO auf den Anmeldeseiten aktivieren" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "SSO Selbstregistrierung aktivieren" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Selbstregistrierung über SSO für Benutzer auf den Anmeldeseiten aktivieren" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "SSO Gruppensynchronisation aktivieren" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "SSO Gruppenschlüssel" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Email-Adresse erforderlich" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Benutzer müssen bei der Registrierung eine E-Mail angeben" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "SSO-Benutzer automatisch ausfüllen" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Benutzer-Details automatisch aus SSO-Konto ausfüllen" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "E-Mail zweimal" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Bei der Registrierung den Benutzer zweimal nach der E-Mail-Adresse fragen" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Passwort zweimal" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Bei der Registrierung den Benutzer zweimal nach dem Passwort fragen" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Erlaubte Domains" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Anmeldung auf bestimmte Domänen beschränken (kommagetrennt, beginnend mit @)" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Gruppe bei Registrierung" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "MFA erzwingen" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Benutzer müssen Multifaktor-Authentifizierung verwenden." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Plugins beim Start prüfen" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Beim Start überprüfen, ob alle Plugins installiert sind - Für Container aktivieren" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "Nach Plugin-Aktualisierungen suchen" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "Periodische Überprüfungen auf Updates für installierte Plugins aktivieren" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "URL-Integration aktivieren" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Plugins zum Hinzufügen von URLs aktivieren" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Navigations-Integration aktivieren" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Plugins zur Integration in die Navigation aktivieren" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "App-Integration aktivieren" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Plugins zum Hinzufügen von Apps aktivieren" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Terminplan-Integration aktivieren" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Geplante Aufgaben aktivieren" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Ereignis-Integration aktivieren" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Plugins ermöglichen auf interne Ereignisse zu reagieren" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Projektcodes aktivieren" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "Aktiviere Projektcodes für die Verfolgung von Projekten" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Inventurfunktionen" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Inventur-Funktionen zur Aufzeichnung von Lagerbeständen und zur Berechnung des Lagerwerts aktivieren" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "Externe Standorte ausschließen" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Lagerartikeln in externen Standorten in der Berechnungen zur Bestandsaufnahme ausschließen" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Automatische Inventur-Periode" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Anzahl der Tage zwischen automatischen Bestandsaufnahmen (zum Deaktivieren auf Null setzen)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "Löschintervall für Berichte" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Inventurberichte werden nach der angegebenen Anzahl von Tagen gelöscht" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "Vollständige Namen von Benutzern anzeigen" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "Vollständigen Namen von Benutzern anstatt Benutzername anzeigen" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "Teststation-Daten aktivieren" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "Teststation-Datenerfassung für Testergebnisse aktivieren" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird nicht beachtet)" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Inaktive Teile ausblenden" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "Ausblenden inaktiver Teile in den auf der Startseite angezeigten Ergebnissen" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Abonnierte Teile anzeigen" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Zeige abonnierte Teile auf der Startseite" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Abonnierte Kategorien anzeigen" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Zeige abonnierte Teilkategorien auf der Startseite" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Neueste Teile anzeigen" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Zeige neueste Teile auf der Startseite" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "Zeige ungültige Stücklisten" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Zeige Stücklisten, die noch nicht validiert sind, auf der Startseite" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Neueste Bestandänderungen anzeigen" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Zeige zuletzt geänderte Lagerbestände auf der Startseite" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Niedrigen Bestand anzeigen" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Zeige geringen Bestand auf der Startseite" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Lerren Bestand anzeigen" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Zeige aufgebrauchte Lagerartikel auf der Startseite" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Benötigten Bestand anzeigen" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Zeige Bestand für Bauaufträge auf der Startseite" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Abgelaufenen Bestand anzeigen" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Zeige abgelaufene Lagerbestände auf der Startseite" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Alten Bestand anzeigen" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Zeige überfällige Lagerartikel auf der Startseite" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Ausstehende Bauaufträge anzeigen" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Zeige ausstehende Bauaufträge auf der Startseite" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Zeige überfällige Bauaufträge" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Zeige überfällige Bauaufträge auf der Startseite" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Ausstehende POs anzeigen" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Zeige ausstehende POs auf der Startseite" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Überfällige POs anzeigen" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Zeige überfällige POs auf der Startseite" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Ausstehende SOs anzeigen" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Zeige ausstehende SOs auf der Startseite" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Überfällige SOs anzeigen" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Zeige überfällige SOs auf der Startseite" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "Ausstehende Versandaufträge anzeigen" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "Ausstehende Versandaufträge auf der Startseite anzeigen" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Zeige Neuigkeiten" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Neuigkeiten auf der Startseite anzeigen" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Label inline anzeigen" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "PDF-Labels im Browser anzeigen, anstatt als Datei herunterzuladen" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Standard-Etikettendrucker" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Einen standardmäßig ausgewählten Etikettendrucker konfigurieren" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Berichte inline anzeigen" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "PDF-Berichte im Browser anzeigen, anstatt als Datei herunterzuladen" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Teile suchen" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Teile in der Suchvorschau anzeigen" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Zulieferteile durchsuchen" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Zuliefererteile in der Suchvorschau anzeigen" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Herstellerteile durchsuchen" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Herstellerteile in der Suchvorschau anzeigen" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Inaktive Teile ausblenden" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Inaktive Teile in der Suchvorschau ausblenden" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Kategorien durchsuchen" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Teilekategorien in der Suchvorschau anzeigen" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Bestand durchsuchen" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Lagerartikel in Suchvorschau anzeigen" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Nicht verfügbare Artikel ausblenden" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Nicht verfügbare Lagerartikel aus der Suchvorschau ausschließen" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Lagerorte durchsuchen" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Lagerorte in Suchvorschau anzeigen" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Firmen durchsuchen" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Firmen in der Suchvorschau anzeigen" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Bauaufträge durchsuchen" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Bauaufträge in der Suchvorschau anzeigen" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Bestellungen durchsuchen" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Bestellungen in der Suchvorschau anzeigen" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Inaktive Bestellungen ausblenden" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Inaktive Bestellungen in der Suchvorschau ausblenden" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Aufträge durchsuchen" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Aufträge in der Suchvorschau anzeigen" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Inaktive Aufträge ausblenden" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Inaktive Aufträge in der Suchvorschau ausblenden" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Suche nach Rücksendungen" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "Rücksendungen in der Suchvorschau anzeigen" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "Inaktive Rücksendungen ausblenden" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "Inaktive Rücksendungen in der Suchvorschau ausblenden" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Anzahl Suchergebnisse" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "Anzahl der Ergebnisse, die in der Vorschau pro Sektion angezeigt werden sollen" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Regex Suche" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "Reguläre Ausdrücke in Suchabfragen aktivieren" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "Ganzes Wort suchen" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "Suchabfragen liefern Ergebnisse für ganze Wortkombinationen" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "zeige Bestand in Eingabemasken" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Zeige den verfügbaren Bestand in einigen Eingabemasken" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "Esc-Taste schließt Formulare" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "Benutze die Esc-Taste, um Formulare zu schließen" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Fixierter Navigationsleiste" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "Position der Navigationsleiste am oberen Bildschirmrand fixieren" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Datumsformat" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Bevorzugtes Format für die Anzeige von Daten" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Teilzeitplanung" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Zeige Zeitplanung für Teile" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Inventur" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Zeigt Inventur-Informationen an (falls die Inventurfunktion aktiviert ist)" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Zeichenkettenlänge in Tabellen" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "Maximale Länge für Zeichenketten, die in Tabellenansichten angezeigt werden" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "Fehlerberichte empfangen" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "Benachrichtigungen bei Systemfehlern erhalten" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "Zuletzt verwendete Druckmaschinen" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "Die zuletzt benutzten Druckmaschinen für einen Benutzer speichern" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Benutzer" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "Preisstaffelungs Anzahl" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Preis" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "Stückpreis für die angegebene Anzahl" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Endpunkt" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "Endpunkt, an dem dieser Webhook empfangen wird" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "Name für diesen Webhook" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "Ist dieser Webhook aktiv" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "Token" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Token für Zugang" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Geheimnis" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Shared Secret für HMAC" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "Nachrichten-ID" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Eindeutige Kennung für diese Nachricht" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Host" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Host von dem diese Nachricht empfangen wurde" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Kopfzeile" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Header dieser Nachricht" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Body" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Body dieser Nachricht" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "Endpunkt, über den diese Nachricht empfangen wurde" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Bearbeitet" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "Wurde die Arbeit an dieser Nachricht abgeschlossen?" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "ID" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Titel" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Link" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Veröffentlicht" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Autor" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Zusammenfassung" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Gelesen" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "Wurde diese Nachricht gelesen?" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "Wurde diese Nachricht gelesen?" msgid "Image" msgstr "Bild" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Bilddatei" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "Einheitsname muss eine gültige Kennung sein" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "Einheitsname" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "Symbol" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "Optionales Einheitssymbol" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Definition" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "Einheitsdefinition" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Anhang" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Fehlende Datei" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Fehlender externer Link" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Datei zum Anhängen auswählen" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Kommentar" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "Upload Datum" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "Datum der hochgeladenen Datei" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "Dateigröße" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "Dateigröße in Bytes" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "Ungültiger Modelltyp für Anhang angegeben" @@ -4015,7 +4104,7 @@ msgstr "Ist dieses Unternehmen aktiv?" #: company/models.py:168 msgid "Is customer" -msgstr "" +msgstr "Ist Kunde" #: company/models.py:169 msgid "Do you sell items to this company?" @@ -4023,7 +4112,7 @@ msgstr "Verkaufen Sie Teile an diese Firma?" #: company/models.py:174 msgid "Is supplier" -msgstr "" +msgstr "Ist Zulieferer" #: company/models.py:175 msgid "Do you purchase items from this company?" @@ -4031,7 +4120,7 @@ msgstr "Kaufen Sie Teile von dieser Firma?" #: company/models.py:180 msgid "Is manufacturer" -msgstr "" +msgstr "Ist Hersteller" #: company/models.py:181 msgid "Does this company manufacture parts?" @@ -4139,26 +4228,26 @@ msgstr "Versandnotizen für interne Verwendung" msgid "Link to address information (external)" msgstr "Link zu Adressinformationen (extern)" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Herstellerteil" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Basisteil" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Teil auswählen" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Teil auswählen" msgid "Manufacturer" msgstr "Hersteller" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Hersteller auswählen" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "MPN" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "Externe URL für das Herstellerteil" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "Teilbeschreibung des Herstellers" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" -msgstr "" +msgstr "Teilenummer des Herstellers" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Parametername" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Wert" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Parameterwert" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Einheiten" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Parametereinheit" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Zuliefererteil" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "Packeinheiten müssen mit den Basisteileinheiten kompatibel sein" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "Packeinheiten müssen größer als Null sein" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Zulieferer" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Zulieferer auswählen" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Lagerbestandseinheit (SKU) des Zulieferers" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "Ist dieser Lieferantenteil aktiv?" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Herstellerteil auswählen" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "Teil-URL des Zulieferers" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "Zuliefererbeschreibung des Teils" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Notiz" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "Basiskosten" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Verpackungen" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Teile-Verpackungen" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Packmenge" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Gesamtmenge, die in einer einzelnen Packung geliefert wird. Für Einzelstücke leer lassen." -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "Vielfache" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Mehrere bestellen" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "Verfügbare Menge von Lieferanten" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Verfügbarkeit aktualisiert" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "Datum des letzten Updates der Verfügbarkeitsdaten" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4358,9 +4454,9 @@ msgstr "Standard-Währung für diesen Zulieferer" #: company/serializers.py:210 msgid "Company Name" -msgstr "" +msgstr "Firmenname" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "Auf Lager" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Inaktiv" @@ -4430,16 +4526,16 @@ msgstr "Bild von URL herunterladen" msgid "Delete image" msgstr "Bild löschen" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Kunde" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "Bild entfernen" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "Verknüpftes Bild von dieser Firma entfernen" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Entfernen" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "Bild hochladen" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "Bild herunterladen" @@ -4628,7 +4724,7 @@ msgstr "Herstellerteil löschen" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Internes Teil" @@ -4638,7 +4734,7 @@ msgstr "Keine Herstellerdaten verfügbar" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Parameter" msgid "New Parameter" msgstr "Neuer Parameter" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "Parameter hinzufügen" @@ -4724,12 +4824,12 @@ msgstr "Zuliefererteil entfernen" msgid "No supplier information available" msgstr "Keine Lieferanteninformationen verfügbar" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "Lieferanten-Teilenummer" @@ -4744,7 +4844,7 @@ msgstr "Neuen Lagerartikel hinzufügen" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Neuer Lagerartikel" @@ -4762,29 +4862,33 @@ msgstr "Preisinformationen ansehen" msgid "Add Price Break" msgstr "Preisstaffel hinzufügen" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "Zulieferteil QR-Code" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "Barcode mit Zulieferteil verknüpfen" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "Verfügbarkeit der Teile aktualisieren" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Lagerartikel" @@ -4820,121 +4924,141 @@ msgstr "Platziert" #: importer/mixins.py:263 msgid "Invalid export format" -msgstr "" +msgstr "Ungültiges Exportformat" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" -msgstr "" +msgstr "Zeitstempel" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" -msgstr "" +msgstr "Zu importierende Datei" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "Spalten" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" -msgstr "" +msgstr "Importstatus" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" +msgstr "Standardwerte" + +#: importer/models.py:101 +msgid "Field Overrides" msgstr "" -#: importer/models.py:201 +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "Wert" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "Fehler" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Gültig" #: importer/operations.py:28 importer/operations.py:49 msgid "Unsupported data file format" -msgstr "" +msgstr "Dateiformat nicht unterstützt" #: importer/operations.py:40 msgid "Failed to open data file" -msgstr "" +msgstr "Fehler beim Öffnen der Datei" #: importer/operations.py:51 msgid "Invalid data file dimensions" +msgstr "Ungültige Dateigröße" + +#: importer/serializers.py:91 +msgid "Invalid field defaults" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" -msgstr "" +msgstr "Zeilen" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" -msgstr "" +msgstr "Liste der zu akzeptierenden Zeilen IDs" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" -msgstr "" +msgstr "Keine Zeilen ausgewählt" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "Kopien" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "Anzahl der zu druckenden Kopien für jedes Label" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "Verbunden" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Unbekannt" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "Drucken" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "Keine Medien" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "Verbindung getrennt" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "Etikettendrucker" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "Drucken Sie Etiketten direkt für verschiedene Artikel." -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "Druckerstandort" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "Den Drucker an einen bestimmten Ort aufstellen" @@ -5075,7 +5203,7 @@ msgstr "Konfigurationstyp" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Gesamtpreis" @@ -5096,9 +5224,9 @@ msgstr "Hat Preise" msgid "No matching purchase order found" msgstr "Keine passende Bestellung gefunden" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Bestellung" @@ -5111,26 +5239,26 @@ msgstr "Bestellung abgeschlossen" msgid "Order Pending" msgstr "Bestellung ausstehend" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Bestellung" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "Rücksendeauftrag" @@ -5158,7 +5286,7 @@ msgstr "Auftragsbeschreibung (optional)" msgid "Select project code for this order" msgstr "Projektcode für diesen Auftrag auswählen" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Link auf externe Seite" @@ -5182,11 +5310,11 @@ msgstr "Ansprechpartner für diesen Auftrag" msgid "Company address for this order" msgstr "Firmenadresse für diesen Auftrag" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Bestell-Referenz" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Bestellungs-Status" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Firma bei der die Teile bestellt werden" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Zulieferer-Referenz" @@ -5207,15 +5335,15 @@ msgstr "Zulieferer Bestellreferenz" msgid "received by" msgstr "Empfangen von" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Aufgabedatum" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Datum an dem die Bestellung aufgegeben wurde" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Datum an dem der Auftrag fertigstellt wurde" @@ -5223,501 +5351,501 @@ msgstr "Datum an dem der Auftrag fertigstellt wurde" msgid "Part supplier must match PO supplier" msgstr "Teile-Zulieferer muss dem Zulieferer der Bestellung entsprechen" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "Anzahl muss eine positive Zahl sein" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Firma an die die Teile verkauft werden" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Kundenreferenz" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "Bestellreferenz" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Versanddatum" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "Versand von" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "Bestellung ist bereits abgeschlossen" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "Bestellung ist bereits storniert" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "Nur ein offener Auftrag kann als abgeschlossen markiert werden" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Auftrag kann nicht abgeschlossen werden, da unvollständige Sendungen vorhanden sind" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "Auftrag kann nicht abgeschlossen werden, da es unvollständige Positionen gibt" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Anzahl" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "Position - Referenz" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Position - Notizen" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Zieldatum für diesen Einzelposten (leer lassen, um das Zieldatum des Auftrags zu verwenden)" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "Positionsbeschreibung (optional)" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Kontext" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "Zusätzlicher Kontext für diese Zeile" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Stückpreis" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "Lieferantenteil muss mit Lieferant übereinstimmen" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "gelöscht" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Zuliefererteil" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Empfangen" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Empfangene Objekt-Anzahl" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Preis" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Preis pro Einheit" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Wo möchte der Käufer diesen Artikel gelagert haben?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "Ein virtuelles Teil kann nicht einem Auftrag zugeordnet werden" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "Nur verkaufbare Teile können einem Auftrag zugewiesen werden" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Verkaufspreis" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Stückverkaufspreis" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Versendet" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Versendete Menge" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Versanddatum" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Lieferdatum" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "Versanddatum" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Kontrolliert von" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Benutzer, der diese Sendung kontrolliert hat" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Sendung" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Sendungsnummer" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Sendungsverfolgungsnummer" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Informationen zur Sendungsverfolgung" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Rechnungsnummer" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Referenznummer für zugehörige Rechnung" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Sendung wurde bereits versandt" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "Sendung hat keine zugewiesene Lagerartikel" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "Lagerartikel wurde nicht zugewiesen" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kann Lagerartikel keiner Zeile mit einem anderen Teil hinzufügen" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Kann Lagerartikel keiner Zeile ohne Teil hinzufügen" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Die zugeordnete Anzahl darf nicht die verfügbare Anzahl überschreiten" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Anzahl für serialisierte Lagerartikel muss 1 sein" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "Auftrag gehört nicht zu Sendung" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "Sendung gehört nicht zu Auftrag" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Position" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "Sendungsnummer-Referenz" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Position" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Lagerartikel für Zuordnung auswählen" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Anzahl für Bestandszuordnung eingeben" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "Rücksendungsreferenz" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "Firma von der die Artikel zurückgeschickt werden" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "Status der Rücksendung" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "Nur serialisierte Artikel können einer Rücksendung zugeordnet werden" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "Artikel zur Rücksendung auswählen" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "Empfangsdatum" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "Das Datum des Empfangs dieses Rücksendeartikels" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "Ergebnis" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "Ergebnis für dieses Zeilenelement" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "Kosten für die Rückgabe oder Reparatur dieses Objektes" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Positionen" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "Abgeschlossene Positionen" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "Bestellung kann nicht verworfen werden" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "Erlaube das Schließen des Auftrags mit unvollständigen Positionen" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "Auftrag hat unvollständige Positionen" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "Der Auftrag ist nicht offen" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "Automatische Preisgestaltung" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "Kaufpreis automatisch basierend auf Lieferantenbestandsdaten berechnen" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Kaufpreiswährung" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "Elemente zusammenfügen" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "Zusammenführen von Elementen mit dem gleichen Teil, Ziel- und Zieldatum zu einem Zeilenelement" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Interne Teilenummer" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "Zuliefererteil muss ausgewählt werden" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "Bestellung muss angegeben sein" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "Lieferant muss mit der Bestellung übereinstimmen" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "Die Bestellung muss mit dem Lieferant übereinstimmen" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Position" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "Position stimmt nicht mit Kaufauftrag überein" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Zielort für empfangene Teile auswählen" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "Losnummer für eingehende Lagerartikel" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Seriennummern für eingehende Lagerartikel" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Barcode" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "Gescannter Barcode" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Barcode ist bereits in Verwendung" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Ganzzahl für verfolgbare Teile erforderlich" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "Positionen müssen angegeben werden" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "Ziel-Lagerort muss angegeben werden" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "Barcode muss eindeutig sein" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Verkaufspreis-Währung" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "Keine Sendungsdetails angegeben" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "Position ist nicht diesem Auftrag zugeordnet" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "Anzahl muss positiv sein" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Seriennummern zum Zuweisen eingeben" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "Sendung wurde bereits versandt" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "Sendung ist nicht diesem Auftrag zugeordnet" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "Folgende Serienummern konnten nicht gefunden werden" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "Folgende Seriennummern sind bereits zugewiesen" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "Artikel der Bestellzeile zurücksenden" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "Artikel entspricht nicht der Rücksendeschrift" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "Artikel wurde bereits erhalten" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "Artikel können nur bei laufenden Bestellungen empfangen werden" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "Verkaufspreis-Währung" @@ -5927,13 +6055,13 @@ msgstr "Auswahl duplizieren" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Zeile entfernen" @@ -6047,8 +6175,8 @@ msgstr "Kundenreferenz" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Ausstehende Sendungen" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Aktionen" @@ -6143,30 +6272,21 @@ msgstr "Stückpreis für {part} auf {price} aktualisiert" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "{part} Stückpreis auf {price} und Menge auf {qty} aktualisiert" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "Teil-ID" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Beschreibung des Teils" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "IPN (Interne Produktnummer)" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Version" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Schlüsselwörter" @@ -6178,7 +6298,7 @@ msgstr "Artikelbild" msgid "Category ID" msgstr "Kategorie-ID" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Kategoriename" @@ -6191,11 +6311,11 @@ msgstr "Standard-Standortnummer" msgid "Default Supplier ID" msgstr "Standard-Lieferantennummer" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Variante von" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Minimaler Bestand" @@ -6203,19 +6323,19 @@ msgstr "Minimaler Bestand" msgid "Used In" msgstr "Benutzt in" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "Im Bau" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "Minimale Kosten" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "Maximale Kosten" @@ -6232,14 +6352,14 @@ msgstr "Name des übergeordneten Teils" msgid "Category Path" msgstr "Pfad zur Kategorie" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Teile" @@ -6256,13 +6376,13 @@ msgstr "Stücklisten-Position ID" msgid "Parent IPN" msgstr "Übergeordnete IPN" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "Niedrigster Preis" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "Mehrstufig" msgid "Include sub-categories in filtered results" msgstr "Unterkategorien in gefilterte Ergebnisse einbeziehen" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "Übergeordnetes" @@ -6344,29 +6464,38 @@ msgstr "Gesamte Stückliste validieren" msgid "This option must be selected" msgstr "Diese Option muss ausgewählt werden" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Kategorie" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "Verwendet" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Standard-Lagerort" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Gesamtbestand" @@ -6375,753 +6504,784 @@ msgstr "Gesamtbestand" msgid "Input quantity for price calculation" msgstr "Menge für die Preisberechnung" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Teil-Kategorie" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Teil-Kategorien" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Standard-Lagerort für Teile dieser Kategorie" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "Strukturell" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Teile können nicht direkt einer strukturellen Kategorie zugeordnet werden, können aber untergeordneten Kategorien zugeordnet werden." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Standard Stichwörter" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "Standard-Stichworte für Teile dieser Kategorie" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Symbol" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Symbol (optional)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Sie können diese Teilekategorie nicht als strukturell festlegen, da ihr bereits Teile zugewiesen sind!" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "Dieses Teil kann nicht gelöscht werden, da es noch aktiv ist" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "Dieses Teil kann nicht gelöscht werden, da es in einem Bauauftrag verwendet wird" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "Ungültige Auswahl für übergeordnetes Teil" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Teil '{self}' kann in der Stückliste nicht für '{parent}' (rekursiv) verwendet werden" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Teil '{parent}' wird in der Stückliste für '{self}' (rekursiv) verwendet" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN muss mit Regex-Muster {pattern} übereinstimmen" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "Ein Lagerartikel mit dieser Seriennummer existiert bereits" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "Teil mit diesem Namen, IPN und Revision existiert bereits." -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "Strukturellen Teilekategorien können keine Teile zugewiesen werden!" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Name des Teils" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "Ist eine Vorlage" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Ist dieses Teil eine Vorlage?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Ist dieses Teil eine Variante eines anderen Teils?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "Artikelbeschreibung (optional)" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Standard Zulieferer" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "Standard Zuliefererteil" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "Standard Ablaufzeit" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "Ablauf-Zeit (in Tagen) für Bestand dieses Teils" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Bestand" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "Maßeinheit für diesen Teil" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Kann dieses Teil zum Bauauftrag von anderen genutzt werden?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Ist dieses Teil aktiv?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ist dieses Teil virtuell, wie zum Beispiel eine Software oder Lizenz?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "Stückliste kontrolliert von" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "BOM Kontrolldatum" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Erstellungs-Nutzer" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "Verantwortlicher Besitzer für dieses Teil" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "Letzte Inventur" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Mehrere verkaufen" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "Währung für die Berechnung der Preise im Cache" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "Minimale Stücklisten Kosten" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "Minimale Kosten für Teile" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "Maximale Stücklisten Kosten" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "Maximale Kosten für Teile" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "Minimale Einkaufskosten" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "Minimale historische Kaufkosten" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "Maximale Einkaufskosten" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "Maximale historische Einkaufskosten" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "Minimaler interner Preis" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "Minimale Kosten basierend auf den internen Staffelpreisen" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "Maximaler interner Preis" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "Maximale Kosten basierend auf internen Preisstaffeln" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "Minimaler Lieferantenpreis" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "Mindestpreis für Teil von externen Lieferanten" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "Maximaler Lieferantenpreis" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "Maximaler Preis für Teil von externen Lieferanten" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "Minimale Variantenkosten" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "Berechnete minimale Kosten für Variantenteile" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "Maximale Variantenkosten" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "Berechnete maximale Kosten für Variantenteile" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "Mindestkosten überschreiben" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "Maximale Kosten überschreiben" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "Berechnete Mindestkosten" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "Berechnete Maximalkosten" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "Mindestverkaufspreis" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "Mindestverkaufspreis basierend auf Staffelpreisen" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "Maximaler Verkaufspreis" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "Maximalverkaufspreis basierend auf Staffelpreisen" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "Mindestverkaufskosten" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "Minimaler historischer Verkaufspreis" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "Maximale Verkaufskosten" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "Maximaler historischer Verkaufspreis" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "Teil für die Inventur" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "Stückzahl" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "Anzahl einzelner Bestandseinträge zum Zeitpunkt der Inventur" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "Insgesamt verfügbarer Lagerbestand zum Zeitpunkt der Inventur" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Datum" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "Datum der Inventur" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "Zusätzliche Notizen" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "Benutzer, der diese Inventur durchgeführt hat" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "Mindestbestandswert" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "Geschätzter Mindestwert des vorhandenen Bestands" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "Maximaler Bestandswert" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "Geschätzter Maximalwert des vorhandenen Bestands" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "Bericht" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "Inventur-Berichtsdatei (intern generiert)" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "Anzahl der Teile" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "Anzahl der Teile, die von der Inventur abgedeckt werden" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "Benutzer, der diesen Inventurbericht angefordert hat" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Ungültiger Vorlagenname - es muss mindestens ein alphanumerisches Zeichen enthalten sein" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "Auswahl muss einzigartig sein" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "Test-Vorlagen können nur für verfolgbare Teile angelegt werden" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "Testvorlage mit demselben Schlüssel existiert bereits für Teil" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Test-Name" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "Namen für diesen Test eingeben" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "Testschlüssel" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "Vereinfachter Schlüssel zum Test" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Test-Beschreibung" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "Beschreibung für diesen Test eingeben" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Aktiviert" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "Ist dieser Test aktiviert?" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Benötigt" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "Muss dieser Test erfolgreich sein?" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Erfordert Wert" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "Muss für diesen Test ein Wert für das Test-Ergebnis eingetragen werden?" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "Anhang muss eingegeben werden" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "Muss für diesen Test ein Anhang für das Test-Ergebnis hinzugefügt werden?" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "Auswahlmöglichkeiten" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "Gültige Optionen für diesen Test (durch Komma getrennt)" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "Checkbox-Parameter können keine Einheiten haben" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "Checkbox-Parameter können keine Auswahl haben" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "Physikalische Einheiten für diesen Parameter" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "Parameter-Beschreibung" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "Checkbox" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "Ist dieser Parameter eine Checkbox?" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "Gültige Optionen für diesen Parameter (durch Kommas getrennt)" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "Ungültige Auswahl für Parameterwert" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Standard-Wert" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "Standard Parameter Wert" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "Teilnummer oder Teilname" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "Eindeutige Teil-ID" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "IPN-Wert des Teils" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "Stufe" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "Stücklistenebene" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "Untergeordnetes Teil" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "Diese Stücklisten-Position ist optional" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Diese Stücklisten-Position ist ein Verbrauchsartikel (sie wird nicht in Bauaufträgen verfolgt)" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Überschuss" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "Referenz der Postion auf der Stückliste" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "Notizen zur Stücklisten-Position" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "Prüfsumme" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "überprüft" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "Diese Stücklistenposition wurde validiert" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "Wird vererbt" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Diese Stücklisten-Position wird in die Stücklisten von Teil-Varianten vererbt" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Varianten zulassen" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Bestand von Varianten kann für diese Stücklisten-Position verwendet werden" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "Menge muss eine Ganzzahl sein" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "Zuliefererteil muss festgelegt sein" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "Stücklisten Ersatzteile" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "Übergeordnete Stücklisten Position" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "Ersatzteil" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "Teil 1" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "Teil 2" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "verknüpftes Teil auswählen" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "Teil-Beziehung kann nicht zwischen einem Teil und sich selbst erstellt werden" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "Doppelte Beziehung existiert bereits" @@ -7129,7 +7289,7 @@ msgstr "Doppelte Beziehung existiert bereits" msgid "Parent Category" msgstr "Übergeordnete Kategorie" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "Übergeordnete Teilkategorie" @@ -7147,7 +7307,7 @@ msgstr "Ergebnisse" msgid "Number of results recorded against this template" msgstr "Anzahl der Ergebnisse, die in dieser Vorlage aufgezeichnet wurden" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Kaufwährung dieses Lagerartikels" @@ -7155,303 +7315,312 @@ msgstr "Kaufwährung dieses Lagerartikels" msgid "Number of parts using this template" msgstr "Anzahl der Teile, die diese Vorlage verwenden" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "Keine Teile ausgewählt" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "Kategorie auswählen" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "Originalteil" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "Originalteil zum Duplizieren auswählen" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Bild kopieren" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "Bild vom Originalteil kopieren" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "Stückliste kopieren" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "Stückliste vom Originalteil kopieren" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Parameter kopieren" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "Parameterdaten vom Originalteil kopieren" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "Anmerkungen kopieren" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "Notizen aus Originalteil kopieren" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "Start-Bestandsmenge" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Initiale Lagermenge für dieses Teil. Wenn die Menge null ist, wird kein Lagerbestand hinzugefügt." -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "Initialer Lagerort" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "Lagerstandort für dieses Teil angeben" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "Lieferant auswählen (oder leer lassen, um zu überspringen)" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "Hersteller auswählen (oder leer lassen, um zu überspringen)" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "Hersteller-Teilenummer" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "Ausgewählte Firma ist kein gültiger Lieferant" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "Ausgewählte Firma ist kein gültiger Hersteller" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "Herstellerteil mit dieser MPN existiert bereits" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "Lieferantenteil mit dieser SKU existiert bereits" -#: part/serializers.py:864 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "Nicht zugewiesenes Lager" -#: part/serializers.py:867 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "Alternatives Lager" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "Teil duplizieren" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "Initiale Daten von anderem Teil kopieren" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "Initialer Lagerbestand" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "Erstelle Teil mit Ausgangsbestand" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "Lieferanteninformationen" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "Lieferanteninformationen zu diesem Teil hinzufügen" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "Kategorieparameter kopieren" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "Parametervorlagen aus der ausgewählten Teilkategorie kopieren" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "Vorhandenes Bild" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "Dateiname eines vorhandenen Teilbildes" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "Bilddatei existiert nicht" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Inventurbericht auf ein bestimmtes Teil und alle Variantenteile beschränken" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Inventurbericht auf eine bestimmte Teilekategorie und alle untergeordneten Kategorien beschränken" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Inventurbericht auf einen bestimmten Lagerort und alle untergeordneten Lagerorte beschränken" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "Externen Bestand ausschließen" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "Lagerartikel an externen Orten ausschließen" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Bericht generieren" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "Erstelle Berichtsdatei mit berechneten Inventurdaten" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "Teile aktualisieren" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "Angegebene Teile mit berechneten Inventurdaten aktualisieren" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "Inventur-Funktionalität ist nicht aktiviert" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "Berechneten Wert für Mindestpreis überschreiben" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "Mindestpreis Währung" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "Berechneten Wert für maximalen Preis überschreiben" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "Maximalpreis Währung" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "Aktualisieren" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "Preis für dieses Teil aktualisieren" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Konnte nicht von den angegebenen Währungen in {default_currency} umrechnen" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "Mindestpreis darf nicht größer als der Maximalpreis sein" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "Der Maximalpreis darf nicht kleiner als der Mindestpreis sein" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "Herstellbar" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "Teil auswählen, von dem Stückliste kopiert wird" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "Bestehende Daten entfernen" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "Bestehende Stücklisten-Positionen vor dem Kopieren entfernen" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "Vererbtes einschließen" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "Stücklisten-Positionen einbeziehen, die von Vorlage-Teilen geerbt werden" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "Ungültige Zeilen überspringen" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "Aktiviere diese Option, um ungültige Zeilen zu überspringen" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "Ersatzteile kopieren" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "Ersatzteile beim Duplizieren von Stücklisten-Positionen kopieren" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "Bestehende Stückliste löschen" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "Bestehende Stücklisten-Positionen vor dem Importieren entfernen" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "Keine Teilspalte angegeben" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "Mehrere übereinstimmende Teile gefunden" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "Keine passenden Teile gefunden" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "Teil ist nicht als Komponente angelegt" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "Menge nicht angegeben" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Ungültige Menge" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "Mindestens eine Stückliste-Position ist erforderlich" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "Gesamtstückzahl" @@ -7603,7 +7772,7 @@ msgstr "Inventurinformationen hinzufügen" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "Inventur" @@ -7790,7 +7959,7 @@ msgstr "Bestand zählen" msgid "Transfer part stock" msgstr "Teilbestand verschieben" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "Teile Aktionen" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "Teil ist virtuell (kein physisches Teil)" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "Teildetails anzeigen" @@ -7853,51 +8022,47 @@ msgstr "Zu Bauaufträgen zugeordnet" msgid "Allocated to Sales Orders" msgstr "Zur Bestellung zugeordnet" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "Herstellbar" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "Minimaler Bestand" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "Preisspanne" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "letzte Seriennummer" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "Nach Seriennummer suchen" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "QR-Code Teil" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "Barcode mit Teil verknüpfen" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "Berechnen" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "Verknüpftes Bild von diesem Teil entfernen" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "Keine passenden Bilder gefunden" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "Teildetails ausblenden" @@ -7955,9 +8120,9 @@ msgstr "Varianten" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Bestand" @@ -8003,7 +8168,7 @@ msgstr "Bearbeiten" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Zuletzt aktualisiert" @@ -8076,8 +8241,8 @@ msgstr "Preise aktualisieren" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Kein Bestand" @@ -8155,7 +8320,7 @@ msgstr "Teilbild nicht gefunden" msgid "Part Pricing" msgstr "Teilbepreisung" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "Das Plugin kann nicht gelöscht werden, da es derzeit aktiv ist" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Treffer für Barcode gefunden" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "Barcode entspricht einem bereits vorhandenen Artikel" @@ -8221,7 +8386,7 @@ msgstr "Barcode stimmt nicht mit einem vorhandenen Lagerartikel überein" msgid "Stock item does not match line item" msgstr "Lagerartikel stimmt nicht mit dem Element überein" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "Unzureichender Bestand verfügbar" @@ -8345,7 +8510,7 @@ msgstr "Bietet native Unterstützung für Barcodes" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "Bietet native Unterstützung für das Drucken von PDF-Etiketten" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "Debug-Modus" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "Debug-Modus aktivieren - gibt Roh-HTML statt PDF zurück" @@ -8421,55 +8588,55 @@ msgstr "InvenTree Maschinen-Etikettendrucker" msgid "Provides support for printing using a machine" msgstr "Unterstützt das Drucken mit einer Maschine" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "Zuletzt benutzt" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "Optionen" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "Seitengröße für das Etikett" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "Etiketten überspringen" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "Diese Anzahl der Etiketten beim Drucken von Etiketten überspringen" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "Rand" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "Einen Rahmen um jedes Label drucken" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "Querformat" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "Labelblatt im Querformat drucken" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "InvenTree Etikettendrucker" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "Anordnen mehrerer Etiketten auf einem einzigen Blatt" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "Label ist zu groß für Seitengröße" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "Es wurden keine Etiketten generiert" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "Keine korrekten Objekte für Vorlage gegeben" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "Fortschritt" @@ -8993,7 +9160,7 @@ msgstr "Lieferant gelöscht" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Stück-Preis" @@ -9006,26 +9173,11 @@ msgstr "Zusätzliche Positionen" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "Summe" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Seriennummer" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "Lagerstandorte" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "Testergebnisse" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "Test" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Ergebnis" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "Kein Ergebnis" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "Verbaute Objekte" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Seriennummer" @@ -9127,7 +9279,7 @@ msgstr "Lieferant" msgid "Customer ID" msgstr "Kunden ID" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "verbaut in" @@ -9152,9 +9304,9 @@ msgstr "Überprüfung erforderlich" msgid "Delete on Deplete" msgstr "Löschen wenn leer" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "Ablaufdatum" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "Unterorte in gefilterte Ergebnisse einbeziehen" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "Übergeordneter Ort" @@ -9194,7 +9346,7 @@ msgstr "Gültigkeitsdauer vor" msgid "Expiry date after" msgstr "Gültigkeitsdauer nach" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "Lagerstandorte Typen" msgid "Default icon for all locations that have no icon set (optional)" msgstr "Standardsymbol für alle Orte, die kein Icon gesetzt haben (optional)" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Bestand-Lagerort" msgid "Stock Locations" msgstr "Bestand-Lagerorte" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Besitzer" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Besitzer auswählen" @@ -9257,7 +9409,7 @@ msgstr "Besitzer auswählen" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Lagerartikel können nicht direkt an einen strukturellen Lagerort verlegt werden, können aber an einen untergeordneten Lagerort verlegt werden." -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "Extern" @@ -9266,7 +9418,7 @@ msgstr "Extern" msgid "This is an external stock location" msgstr "Dies ist ein externer Lagerort" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "Standorttyp" @@ -9283,7 +9435,7 @@ msgstr "Sie können diesen Lagerort nicht als strukturell markieren, da sich ber msgid "Stock items cannot be located into structural stock locations!" msgstr "Lagerartikel können nicht in strukturelle Lagerorte abgelegt werden!" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "Für virtuelle Teile können keine Lagerartikel erstellt werden" @@ -9300,236 +9452,236 @@ msgstr "Anzahl muss für Objekte mit Seriennummer 1 sein" msgid "Serial number cannot be set if quantity greater than 1" msgstr "Seriennummer kann nicht gesetzt werden wenn die Anzahl größer als 1 ist" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "Teil kann nicht zu sich selbst gehören" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "Teil muss eine Referenz haben wenn is_building wahr ist" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "Referenz verweist nicht auf das gleiche Teil" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Eltern-Lagerartikel" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "Basis-Teil" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Passendes Zuliefererteil für diesen Lagerartikel auswählen" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "Verpackung, in der dieser Lagerartikel gelagert ist" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "Ist dieses Teil in einem anderen verbaut?" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "Seriennummer für dieses Teil" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "Losnummer für diesen Lagerartikel" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "Bestand" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "Quellbau" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "Bauauftrag für diesen Lagerartikel" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "Verbraucht von" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "Bauauftrag der diesen Lagerartikel verbrauchte" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "Quelle Bestellung" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Bestellung für diesen Lagerartikel" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "Ziel-Auftrag" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Ablaufdatum für Lagerartikel. Bestand wird danach als abgelaufen gekennzeichnet" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "Löschen wenn leer" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "Diesen Lagerartikel löschen wenn der Bestand aufgebraucht ist" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "Preis für eine Einheit bei Einkauf" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "In Teil umgewandelt" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "Teil ist nicht verfolgbar" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "Anzahl muss eine Ganzzahl sein" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Menge darf die verfügbare Lagermenge ({self.quantity}) nicht überschreiten" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "Seriennummern muss eine Liste von Ganzzahlen sein" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "Anzahl stimmt nicht mit den Seriennummern überein" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Seriennummern existieren bereits" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "Testvorlage existiert nicht" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "Artikel wurde einem Kundenauftrag zugewiesen" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "Lagerartikel ist in anderem Element verbaut" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "Lagerartikel enthält andere Artikel" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "Artikel wurde einem Kunden zugewiesen" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "Lagerartikel wird aktuell produziert" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "Nachverfolgbare Lagerartikel können nicht zusammengeführt werden" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "Artikel duplizeren" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "Lagerartikel müssen auf dasselbe Teil verweisen" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "Lagerartikel müssen auf dasselbe Lieferantenteil verweisen" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "Status-Codes müssen zusammenpassen" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagerartikel kann nicht bewegt werden, da kein Bestand vorhanden ist" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "Eintrags-Notizen" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "Wert muss für diesen Test angegeben werden" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "Anhang muss für diesen Test hochgeladen werden" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "Testergebnis" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "Test Ausgabe Wert" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "Test Ergebnis Anhang" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "Test Notizen" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "Teststation" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "Der Bezeichner der Teststation, in der der Test durchgeführt wurde" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "Gestartet" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "Der Zeitstempel des Teststarts" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "Fertiggestellt" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "Der Zeitstempel der Test-Beendigung" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "Testvorlage für dieses Ergebnis" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "Vorlagen-ID oder Testname muss angegeben werden" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "Die Test-Endzeit kann nicht früher als die Startzeit des Tests sein" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "Seriennummer ist zu lang" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "Elternposition" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "Packungsgröße beim Hinzufügen verwenden: Die definierte Menge ist die Anzahl der Pakete" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "Zugewiesene Menge" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "abgelaufen" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "Untergeordnete Objekte" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "Einkaufspreis dieses Lagerartikels, pro Einheit oder Verpackungseinheit" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "Anzahl der zu serialisierenden Lagerartikel eingeben" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "Anzahl darf nicht die verfügbare Menge überschreiten ({q})" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "Seriennummern für neue Teile eingeben" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "Ziel-Bestand" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "Optionales Notizfeld" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "Seriennummern können diesem Teil nicht zugewiesen werden" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "Lagerartikel für Installation auswählen" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "Zu installierende Menge" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "Anzahl der zu verwendenden Artikel eingeben" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr " Transaktionsnotizen hinzufügen (optional)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "Die zu verwendende Menge muss mindestens 1 sein" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "Lagerartikel ist nicht verfügbar" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "Ausgewähltes Teil ist nicht in der Stückliste" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "Die zu verwendende Menge darf die verfügbare Menge nicht überschreiten" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "Ziel Lagerort für unverbautes Objekt" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "Wählen Sie einen Teil aus, zu dem dieser Lagerartikel geändert werden soll" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "Das ausgewählte Teil ist keine gültige Option für die Umwandlung" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "Lagerartikel konnte nicht mit Zulieferteil zugewiesen werden" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "Ziel Lagerort für zurückgegebene Artikel" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "Lagerartikel auswählen, um den Status zu ändern" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "Keine Lagerartikel ausgewählt" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Unter-Lagerorte" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "Übergeordneter Lagerort" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "Teil muss verkaufbar sein" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "Artikel ist einem Kundenauftrag zugeordnet" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "Artikel ist einem Fertigungsauftrag zugeordnet" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "Kunde zum Zuweisen von Lagerartikel" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "Ausgewählte Firma ist kein Kunde" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "Notizen zur Lagerzuordnung" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "Eine Liste der Lagerbestände muss angegeben werden" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "Notizen zur Lagerartikelzusammenführung" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "Unterschiedliche Lieferanten erlauben" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Lieferanten erlauben" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "Unterschiedliche Status erlauben" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Status-Codes erlauben" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "Mindestens zwei Lagerartikel müssen angegeben werden" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "Keine Änderung" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "Primärschlüssel Lagerelement" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "Lagerartikel Status-Code" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "Bestandsbewegungsnotizen" @@ -9824,7 +9971,7 @@ msgstr "In Quarantäne" msgid "Legacy stock tracking entry" msgstr "Alter Bestand-Verfolgungs-Eintrag" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Lagerartikel erstellt" @@ -9880,7 +10027,7 @@ msgstr "Vom übergeordneten Element geteilt" msgid "Split child item" msgstr "Unterobjekt geteilt" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Lagerartikel zusammengeführt" @@ -9900,7 +10047,7 @@ msgstr "Endprodukt fertiggestellt" msgid "Build order output rejected" msgstr "Endprodukt abgelehnt" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Durch Bauauftrag verbraucht" @@ -9961,7 +10108,7 @@ msgstr "Lagerartikel-Notizen" msgid "Installed Stock Items" msgstr "Installierte Lagerartikel" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "Lagerartikel installieren" @@ -9969,7 +10116,7 @@ msgstr "Lagerartikel installieren" msgid "Delete all test results for this stock item" msgstr "Alle Testergebnisse für diesen Lagerartikel löschen" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "Testergebnis hinzufügen" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "Bestands-Anpassungs Aktionen" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Bestand zählen" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "Bestand hinzufügen" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "Bestand entfernen" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "Bestand serialisieren" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Bestand verschieben" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "Kunden zuweisen" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "Lagerartikel löschen" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Bauauftrag" @@ -10114,12 +10261,8 @@ msgstr "nächste Seite" msgid "Navigate to next serial number" msgstr "Zur nächsten Seriennummer wechseln" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "Verfügbare Menge" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Kein Lagerort gesetzt" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "Keine Inventur ausgeführt" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "Lagerartikel" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Neuer Lagerort" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "Lagerort" @@ -10533,11 +10676,11 @@ msgstr "Slug" msgid "Part Settings" msgstr "Teil-Einstellungen" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "Teileimport" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "Teil importieren" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "Bewerten" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Löschen" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "Keine Projektcodes gefunden" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "gruppieren" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "Keine Kategorieparameter Vorlage gefunden" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "Vorlage bearbeiten" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "Vorlage löschen" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "Startseite" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "E-Mail-Adresse bestätigen" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Bitte bestätigen Sie, dass %(email)s eine E-Mail-Adresse für den Benutzer %(user_display)s ist." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Bestätigen" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "Bei den folgenden Teilen gibt es wenige Lagerartikel" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Benötigte Menge" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "Klicken Sie auf den folgenden Link, um diesen Teil anzuzeigen" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "Mindestmenge" @@ -11595,81 +11738,81 @@ msgstr "Unbekannte Serverantwort" msgid "Invalid server response" msgstr "Ungültige Serverantwort" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "Barcode Daten scannen" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Barcode scannen" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "Keine URL in der Antwort" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "Dadurch wird der Link zu dem zugehörigen Barcode entfernt" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "Verknüpfung aufheben" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "Lagerartikel entfernen" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "Artikel per Barcode-Scan zu Lagerort hinzufügen" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "Barcode des Lagerartikels scannen um ihn an diesen Ort hinzuzufügen" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "Einbuchen" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "Kein Barcode vorhanden" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "Lagerartikel bereits gescannt" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "Lagerartikel bereits an diesem Standort vorhanden" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "Lagerartikel hinzugefügt" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "Barcode entspricht keinem Lagerartikel" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "Lagerbehälter an diesen Ort einscannen" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "Barcode des Lagerbehälters scannen um ihn an diesen Ort hinzuzufügen" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "Barcode entspricht keinem gültigen Lagerort" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "Zu Lagerort hinzufügen" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "Barcode entspricht keinem Lagerort" @@ -11805,7 +11948,7 @@ msgstr "Stückliste für Bauteile laden" msgid "Substitutes Available" msgstr "Ersatzteile verfügbar" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "Alternatives Lager erlaubt" @@ -11825,30 +11968,30 @@ msgstr "Stücklistenpreise sind vollständig" msgid "No pricing available" msgstr "Keine Preisinformation verfügbar" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "Externes Lager" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "Kein Lagerbestand verfügbar" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "Alternatives Lager und Ersatzteillager einschließen" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "Alternatives Lager einschließen" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "Ersatzteillager einschließen" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "Verbrauchsartikel" @@ -11880,7 +12023,7 @@ msgstr "Stückliste anzeigen" msgid "No BOM items found" msgstr "Keine Stücklisten-Position(en) gefunden" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "Benötigtes Teil" @@ -11888,364 +12031,400 @@ msgstr "Benötigtes Teil" msgid "Inherited from parent BOM" msgstr "Von übergeordneter Stückliste geerbt" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "Bauauftrag bearbeiten" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "Bauauftrag erstellen" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "Bauauftrag abbrechen" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "Sind Sie sicher, dass sie diesen Bauauftrag abbrechen möchten?" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "Lagerartikel wurden zu diesem Bauauftrag hinzugefügt" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "Es sind noch unvollständige Artikel für diesen Bauauftrag vorhanden" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "Bauauftrag ist bereit abgeschlossen zu werden" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "Dieser Bauauftrag kann nicht abgeschlossen werden, da es unfertige Endprodukte gibt" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "Bauauftrag ist unvollständig" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "Bauauftrag fertigstellen" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "Nächste verfügbare Seriennummer" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "Letzte Seriennummer" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "Die Stückliste enthält verfolgbare Teile" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "Endprodukte müssen individuell angelegt werden" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "Nachverfolgbare Teile können Seriennummern haben" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "Seriennummern für mehrere einzelne Endprodukte angeben" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "Endprodukt anlegen" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "Lagerartikel zu diesem Endprodukt zuweisen" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "Bestand von Endprodukt entfernen" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "Endprodukt fertigstellen" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "Ausschuss Endprodukt" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "Endprodukt entfernen" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "Sind Sie sicher, dass sie alle Lagerartikel von diesem Bauauftrag entfernen möchten?" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "Lagerartikel entfernen" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 +#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 +#: templates/js/translated/build.js:838 msgid "Select Build Outputs" msgstr "Endprodukte auswählen" -#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 -#: templates/js/translated/build.js:838 +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "Mindestens ein Endprodukt muss ausgewählt werden" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "Ausgewählte Endprodukte werden als vollständig markiert" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "Endprodukt" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "Endprodukte fertigstellen" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "Ausgewählte Endprodukte werden als Ausschuss markiert" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "Ausschuss wird als verworfen markiert" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "Zugewiesene Lagerbestände werden nicht mehr verfügbar sein" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "Der Fertigstellungsstatus des Bauauftrags wird nicht angepasst" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "Ausschuss Endprodukte" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "Ausgewählte Endprodukte werden gelöscht" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "Endprodukte werden dauerhaft gelöscht" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "Zugewiesene Lagerartikel werden in den Bestand zurückgeführt" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "Endprodukte entfernen" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "Keine Allokationen für Bauauftrag gefunden" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "Standort nicht angegeben" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "Endprodukte fertigstellen" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "Ausschuss" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "Endprodukte löschen" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "Endprodukt" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "Endprodukte" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "Endprodukt-Aktionen" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "Keine aktiven Endprodukte gefunden" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "Zugewiesene Positionen" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "Erforderliche Prüfungen" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "Teile auswählen" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "Sie müssen mindestens einen Teil für die Zuweisung auswählen" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "Anzahl für Bestandszuordnung eingeben" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "Alle Teile zugeordnet" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "Alle ausgewählten Teile wurden vollständig zugeordnet" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "Wählen Sie den Quellort aus (leer lassen, um von allen Standorten zu nehmen)" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "Lagerartikel für Bauauftrag zuweisen" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "Keine passenden Lagerstandorte" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "Keine passenden Lagerartikel" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "Automatische Lagerzuordnung" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "Lagerartikel werden automatisch diesem Bauauftrag zugewiesen, entsprechend den angegebenen Richtlinien" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "Wenn ein Lagerort angegeben ist, wird der Lagerbestand nur von diesem Ort zugewiesen" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "Wenn der Lagerbestand als austauschbar gilt, wird er vom ersten Standort zugewiesen, an dem er gefunden wird" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "Wenn ein Ersatzlager zugelassen ist, wird dieses verwendet, wenn das Primärteil nicht vorrätig ist" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "Lagerartikel zuordnen" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "Keine Bauaufträge zur Suchanfrage" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "Auswählen" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "Bauauftrag ist überfällig" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "Keine Benutzerinformation" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "Bestands-Zuordnung bearbeiten" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "Bestands-Zuordnung löschen" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "Zuordnung bearbeiten" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "Zuordnung entfernen" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "Bauauftragsposition" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "Bauauftragspositionen" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "Keine Bauauftragspositionen gefunden" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "Nachverfolgbares Teil" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "Menge" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "Ausreichender Bestand vorhanden" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "Verbrauchsartikel" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "Verfolgtes Objekt" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "Zuweisung von nachverfolgbaren Artikeln zu einzelnen Bauprodukten" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "Bestand bauen" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "Bestand bestellen" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "Bestand zuweisen" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "Bestands-Zuordnung löschen" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "Parameter löschen" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "Teile bestellen" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "Keine Herstellerteile gefunden" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "Vorlagenteil" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "Baugruppe" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "Keine Parameter gefunden" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "Parameter bearbeiten" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "Parameter löschen" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "Parameter bearbeiten" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "Parameter löschen" @@ -12532,61 +12711,61 @@ msgstr "Alle Filter entfernen" msgid "Create filter" msgstr "Filter erstellen" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "Aktion nicht erlaubt" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "Erstellen ist nicht erlaubt" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "Aktualisieren ist nicht erlaubt" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "Löschvorgang nicht erlaubt" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "Anzeigevorgang nicht erlaubt" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "Dieses Formular offen lassen" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "Gib eine gültige Nummer ein" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Fehler in Formular" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "Keine Ergebnisse gefunden" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "Suche" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "Eingabe löschen" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "Dateispalte" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "Feldname" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "Spalten auswählen" @@ -12687,7 +12866,7 @@ msgstr "Keine Nachrichten gefunden" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "ID" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "Position löschen" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "Keine Postionen gefunden" @@ -12768,343 +12947,342 @@ msgstr "Duplizierungsoptionen für Teile" msgid "Add Part Category" msgstr "Teil-Kategorie hinzufügen" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "Icon (optional) - alle verfügbaren Icons einsehbar auf" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "Teil-Kategorie hinzufügen" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "Neue Kategorie nach dieser Kategorie erstellen" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "Artikelkategorie erstellt" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "Teilekategorie bearbeiten" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "Möchten Sie diese Artikel-Kategorie wirklich löschen?" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "In übergeordnete Kategorie verschieben" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "Teil-Kategorie löschen" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "Aktion für Teile in dieser Kategorie" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "Aktion für Unterkategorien" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "Teil erstellen" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "Weiteres Teil nach diesem erstellen" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "Teil erfolgreich angelegt" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "Teil bearbeiten" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "Teil bearbeitet" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "Teil-Variante anlegen" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "Aktives Teil" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "Teil kann nicht gelöscht werden, da es derzeit aktiv ist" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "Das Löschen dieses Teils kann nicht rückgängig gemacht werden" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "Alle Lagerartikel für dieses Teil werden gelöscht" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "Dieses Teil wird von allen Stücklisten entfernt" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "Alle Hersteller- und Lieferanteninformationen für dieses Teil werden gelöscht" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "Teil löschen" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "Du hast Benachrichtigungen zu diesem Artikel abonniert" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "Du hast Benachrichtigungen zu diesem Artikel abonniert" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "Benachrichtigungen zu diesem Artikel abonnieren" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "Du erhältst keine Benachrichtigungen zu diesem Artikel mehr" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "Die Stückliste zu validieren markiert jede Position als gültig" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "Stückliste prüfen" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "Überprüfte Stückliste" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "Stückliste kopieren" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "Bestand niedrig" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "Kein Lagerbestand verfügbar" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "Bedarf" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "Einheit" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "Virtuelles Teil" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "Abonniertes Teil" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "Verkäufliches Teil" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "Erstellung eines neuen Inventurberichts planen." -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "Nach Fertigstellung steht der Inventurbericht zum Download zur Verfügung." -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "Inventurbericht erstellen" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "Inventurbericht geplant" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "Keine Inventurinformationen verfügbar" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "Inventureintrag bearbeiten" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "Inventureintrag löschen" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "Keine Varianten gefunden" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "Keine Teileparametervorlagen gefunden" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "Teileparametervorlage bearbeiten" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "Alle Parameter mit Verweis auf diese Vorlage werden ebenfalls gelöscht" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "Teileparametervorlage löschen" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "Keine Bestellungen gefunden" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "Diese Position ist überfällig" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "Position empfangen" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "Teilebeziehung löschen" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "Teilebeziehung löschen" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "Keine Teile gefunden" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "Wähle die Kategorie für die ausgewählten Teile" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "Teilekategorie auswählen" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "Kategorie wählen" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "Teil" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "Teile" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "Keine Kategorien" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "Als Liste anzeigen" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "Als Raster anzeigen" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "Keine Unterkategorien gefunden" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "Als Baum anzeigen" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "Unterkategorien laden" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "Abonnierte Kategorie" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "Keine passenden Testvorlagen gefunden" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "Ergebnisse" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" -msgstr "Testergebnis bearbeiten" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" +msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "Testergebnis löschen" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" +msgstr "" -#: templates/js/translated/part.js:2945 +#: templates/js/translated/part.js:2961 msgid "This test is defined for a parent part" msgstr "Dieser Test ist für ein übergeordnetes Teil definiert" -#: templates/js/translated/part.js:2961 +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "Vorlage für Testergebnis bearbeiten" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "Vorlage für Testergebnis löschen" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "Kein Datum angegeben" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "Das angegebene Datum liegt in der Vergangenheit" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "Spekulativ" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "Keine Zeitplanung für dieses Teil vorhanden" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "Fehler beim Abrufen der Zeitplanungsinformationen für dieses Teil" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "Geplante Lagermengen" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "Maximale Menge" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "Minimaler Lagerbestand" @@ -13317,108 +13495,121 @@ msgstr "Erhaltene Menge" msgid "Quantity to receive" msgstr "Zu erhaltende Menge" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "Bestandsstatus" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "Barcode hinzufügen" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "Barcode entfernen" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "Lagerort angeben" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "Losnummer hinzufügen" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "Seriennummern hinzufügen" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "Seriennummern" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "Bestellnummer" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "Zu erhaltende Menge" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "Empfang der Artikel bestätigen" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "Bestellartikel erhalten" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "Artikel-Barcode scannen" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "Scanne den Barcode am erhaltenen Artikel (darf nicht mit einem existierenden Lagerartikel übereinstimmen)" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "Ungültige Barcode-Daten" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "Bestellung ist überfällig" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "Alle ausgewählten Positionen werden gelöscht" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "Ausgewählte Positionen löschen?" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "Position duplizieren" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "Position bearbeiten" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "Position löschen" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "Position duplizieren" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "Position bearbeiten" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "Bestandszuordnung löschen" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "An den Kunden versandt" @@ -13700,476 +13891,492 @@ msgstr "Ergebnisse minimieren" msgid "Remove results" msgstr "Ergebnisse entfernen" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "Lagerartikel serialisieren" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "Lager-Serialisierung bestätigen" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "Standardsymbol für alle Orte, die kein Symbol haben (optional) - Erkunden Sie alle verfügbaren Symbole auf" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "Lagerorttyp hinzufügen" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "Lagerort bearbeiten" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "Lagerort hinzufügen" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "Weiteren Lagerort nach diesem erstellen" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "Lagerort erstellt" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "Soll dieser Lagerort gelöscht werden?" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "Zum übergeordneten Lagerort verschieben" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "Lagerort löschen" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "Aktion für Lagerartikel in diesem Lagerort" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "Aktion für Unter-Lagerorte" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "Dieser Teil kann nicht serialisiert werden" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "Angegebene Menge als Packungen anstatt einzelner Artikel hinzufügen" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "Ausgangsmenge für diesen Lagerartikel eingeben" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Seriennummern für neue Lagerartikel eingeben (oder leer lassen)" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "Lagerartikel dupliziert" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "Lagerartikel duplizieren" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "Soll dieser Lagerartikel gelöscht werden?" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "Lagerartikel löschen" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "Lagerartikel bearbeiten" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "Weiteres Teil nach diesem erstellen" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "Neuen Lagerartikel erstellen" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "Mehrere Lagerartikel wurden erstellt" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "Seriennummer finden" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "Seriennummer eingeben" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "Eine Seriennummer eingeben" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "Keine passende Seriennummer" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "Mehr als ein übereinstimmendes Ergebnis gefunden" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "Bestand Zuweisung bestätigen" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "Lagerbestand einem Kunden zuweisen" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "Achtung: Das Zusammenführen kann nicht rückgängig gemacht werden" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "Einige Informationen gehen verloren, wenn Artikel zusammengeführt werden" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "Lagerartikelverlauf wird für zusammengeführte Lagerartikel gelöscht" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "Lieferantenteil-Informationen werden für zusammengeführte Artikel gelöscht" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "Bestandszusammenführung bestätigen" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "Lagerartikel zusammenführen" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "Bestand verschieben" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "Verschieben" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "Bestand zählen" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "Zählen" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "Bestand entfernen" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "Entnehmen" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "Bestand hinzufügen" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Hinzufügen" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "Bestand löschen" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "Menge von serialisiertem Bestand kann nicht bearbeitet werden" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "Bestandsanzahl angeben" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "Lagerartikel auswählen" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "Wähle mindestens einen verfügbaren Lagerartikel aus" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "Bestandsanpassung bestätigen" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "ERFOLGREICH" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "FEHLGESCHLAGEN" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "KEIN ERGEBNIS" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "Test bestanden" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "Testergebnis hinzufügen" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "Testergebnis bearbeiten" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "Testergebnis löschen" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "Keine Testergebnisse gefunden" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "Testdatum" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "Test gestartet" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "Test beendet" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "Testergebnis bearbeiten" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "Testergebnis löschen" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "In Produktion" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "In Lagerartikel installiert" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "Auftrag zugewiesen" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "Kein Lagerort gesetzt" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "Bestandsstatus ändern" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "Bestand zusammenführen" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "Bestand löschen" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "Lagerartikel" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "Zu Lagerort einscannen" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "Lager-Aktionen" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "Installierte Artikel laden" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "Lagerartikel wird produziert" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "Lagerartikel wurde Auftrag zugewiesen" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "Lagerartikel wurde Kunden zugewiesen" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "Serialisierter Lagerartikel wurde zugewiesen" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "Lagerartikel wurde vollständig zugewiesen" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "Lagerartikel wurde teilweise zugewiesen" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "Lagerartikel in anderem Artikel verbaut" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "Lagerbestand wurde durch einen Bauauftrag verbraucht" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "Lagerartikel ist abgelaufen" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "Lagerartikel läuft demnächst ab" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "Lagerartikel wurde zurückgewiesen" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "Lagerartikel ist verloren" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "Lagerartikel ist zerstört" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "Aufgebraucht" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "Zuliefererteil nicht angegeben" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "Bestandswert" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "Keine zur Anfrage passenden Lagerartikel gefunden" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "Lagerorte" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "Untergeordnete Lagerorte laden" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "Details" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "Keine Änderungen" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "Teileinformationen nicht verfügbar" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "Lagerort existiert nicht mehr" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "Bauauftrag existiert nicht mehr" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "Bestellung existiert nicht mehr" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "Auftrag existiert nicht mehr" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "Rücksendebestellung existiert nicht mehr" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "Kunde existiert nicht mehr" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "Lagerartikel existiert nicht mehr" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "Hinzugefügt" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "Entfernt" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "Keine installierten Artikel" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "Lagerartikel deinstallieren" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "Zu deinstallierende Lagerartikel auswählen" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "Einen anderen Lagerartikel in dieses Teil installieren" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "Lagerartikel können nur installiert werden wenn folgende Kriterien erfüllt werden" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "Der Lagerartikel ist mit einem Teil verknüpft das in der Stückliste für diesen Lagerartikel ist" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "Dieser Lagerartikel ist aktuell vorhanden" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "Der Lagerbestand ist nicht bereits in einem anderen Bestand installiert" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "Der Lagerbestand wird entweder mit einem Batch-Code oder mit Seriennummer verfolgt" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "Teil zur Installation auswählen" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "Wählen Sie einen oder mehrere Bestandteile aus" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "Lagerartikel auswählen" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "Bestandsstatus ändern" diff --git a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po index 6b2243c886..89825fc470 100644 --- a/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -56,26 +56,29 @@ msgstr "Μπορείτε να βρείτε λεπτομέρειες σφάλμα msgid "Enter date" msgstr "Εισάγετε ημερομηνία" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Σημειώσεις" @@ -132,7 +135,7 @@ msgstr "Ο παρεχόμενος τομέας ηλεκτρονικού ταχυ msgid "Registration is disabled." msgstr "Η εγγραφή είναι απενεργοποιημένη." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Μη έγκυρη ποσότητα" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Το URL δεν είναι έγκυρο αρχείο εικόνας" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Βουλγάρικα" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Τσέχικα" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Δανέζικα" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Γερμανικά" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Ελληνικά" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Αγγλικά" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Ισπανικά" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Ισπανικά (Μεξικό)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Φαρσί / Περσικά" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Φινλανδικά" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Γαλλικά" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Εβραϊκά" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Ινδικά" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Ούγγρικα" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Ιταλικά" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Ιαπωνικά" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Κορεάτικα" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Νορβηγικά" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Πολωνικά" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Πορτογαλικά" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Πορτογαλικά (Βραζιλίας)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Ρωσικά" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Σλοβάκικα" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Σλοβενικά" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Σερβικά" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Σουηδικά" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Ταϊλανδέζικα" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Τούρκικα" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Βιετναμέζικα" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Κινέζικα (απλοποιημένα)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Κινέζικα (Παραδοσιακά)" @@ -403,9 +414,9 @@ msgstr "Διπλότυπα ονόματα δεν μπορούν να υπάρχ msgid "Invalid choice" msgstr "Μη έγκυρη επιλογή" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Μη έγκυρη επιλογή" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Όνομα" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Όνομα" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Περιγραφή" @@ -464,8 +475,8 @@ msgstr "Περιγραφή" msgid "Description (optional)" msgstr "Περιγραφή (προαιρετική)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Μονοπάτι" @@ -501,12 +512,12 @@ msgstr "Σφάλμα διακομιστή" msgid "An error has been logged by the server." msgstr "Ένα σφάλμα έχει καταγραφεί από το διακομιστή." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Πρέπει να είναι αριθμός" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Καλώς ήρθατε στο InvenTree" msgid "Invalid value" msgstr "Μη έγκυρη τιμή" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Αρχείο Δεδομένων" @@ -651,7 +662,7 @@ msgstr "Διεύθυνση URL του αρχείου απομακρυσμένη msgid "Downloading images from remote URL is not enabled" msgstr "Η λήψη εικόνων από απομακρυσμένο URL δεν είναι ενεργοποιημένη" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Ο έλεγχος εργασίας στο παρασκήνιο απέτυχε" @@ -711,48 +722,48 @@ msgstr "Πληροφορίες συστήματος" msgid "About InvenTree" msgstr "Σχετικά με το InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Η έκδοση πρέπει να ακυρωθεί πριν διαγραφεί" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Αναλώσιμο" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Προαιρετικό" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Υπό παρακολούθηση" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Κατανεμημένο" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Διαθέσιμο" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Σειρά Κατασκευής" @@ -778,72 +789,72 @@ msgstr "Σειρά Κατασκευής" msgid "Build Orders" msgstr "Δημιουργία Παραγγελιών" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Μη έγκυρη επιλογή για γονική κατασκευή" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Εξάρτημα από εντολή κατασκευής δεν μπορεί να αλλάξει" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Αναφορά Παραγγελίας Κατασκευής" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Αναφορά" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Σύντομη περιγραφή της κατασκευής (προαιρετικό)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Γονική Κατασκευή" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "BuildOrder στην οποία έχει δοθεί αυτή η κατασκευή" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "BuildOrder στην οποία έχει δοθεί αυτή η κατα #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Εξάρτημα" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Επιλέξτε τμήμα για κατασκευή" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Κωδικός Παραγγελίας Πωλήσεων" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "SalesOrder στην οποία έχει διατεθεί αυτό το build" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Τοποθεσία Προέλευσης" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Επιλέξτε τοποθεσία από την οποία θα γίνει απόθεμα, για αυτή την κατασκευή (αφήστε κενό για να πάρετε από οποιαδήποτε θέση αποθήκευσης)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Τοποθεσία Προορισμού" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Επιλέξτε την τοποθεσία όπου θα αποθηκευτούν τα ολοκληρωμένα στοιχεία" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Ποσότητα Κατασκευής" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Αριθμός αντικειμένων για κατασκευή" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Ολοκληρωμένα αντικείμενα" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Αριθμός αντικειμένων αποθέματος που έχουν ολοκληρωθεί" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Κατάσταση Κατασκευής" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Κωδικός κατάστασης κατασκευής" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Κωδικός Παρτίδας" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Κωδικός παρτίδας για αυτήν την κατασκευή" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Ημερομηνία Δημιουργίας" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Ημερομηνία ολοκλήρωσης στόχου" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Ημερομηνία ολοκλήρωσης της κατασκευής. Η κατασκευή θα καθυστερήσει μετά από αυτή την ημερομηνία." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Ημερομηνία ολοκλήρωσης" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "ολοκληρώθηκε από" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Εκδόθηκε από" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Χρήστης που εξέδωσε αυτήν την παραγγελία κατασκευής" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Υπεύθυνος" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Χρήστης ή ομάδα υπεύθυνη για αυτή την εντολή κατασκευής" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Εξωτερικοί σύνδεσμοι" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Σύνδεσμος προς εξωτερική διεύθυνση URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Προτεραιότητα Κατασκευής" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Προτεραιότητα αυτής της εντολής κατασκευής" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Προτεραιότητα αυτής της εντολής κατασκ msgid "Project Code" msgstr "Κωδικός Έργου" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Κωδικός έργου για αυτήν την εντολή κατασκευής" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Η παραγγελία κατασκευής {build} έχει ολοκληρωθεί" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Δεν καθορίστηκε έξοδος κατασκευής" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Η ποσότητα δεν μπορεί να είναι μεγαλύτερη από την παραγόμενη ποσότητα" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Το προϊόν κατασκευής {serial} δεν έχει περάσει όλες τις απαιτούμενες δοκιμές" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Αντικείμενο κατασκευής" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Αντικείμενο κατασκευής" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Ποσότητα" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Απαιτούμενη ποσότητα για την εντολή κατασκευής" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Το στοιχείο κατασκευής πρέπει να ορίζει μια έξοδο κατασκευής, καθώς το κύριο τμήμα επισημαίνεται ως ανιχνεύσιμο" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Η καταχωρημένη ποσότητα ({q}) δεν πρέπει να υπερβαίνει τη διαθέσιμη ποσότητα αποθέματος ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Στοιχείο αποθέματος είναι υπερ-κατανεμημένο" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Η ποσότητα πρέπει να είναι 1 για σειριακό απόθεμα" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Το επιλεγμένο στοιχείο αποθέματος δεν ταιριάζει με τη γραμμή ΤΥ" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Στοιχείο Αποθέματος" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Στοιχείο πηγαίου αποθέματος" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Ποσότητα αποθέματος για διάθεση για κατασκευή" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Εγκατάσταση σε" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Αποθήκη προορισμού" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Κατασκευή Εξόδου" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Η έξοδος κατασκευής δεν ταιριάζει με την παραγγελία κατασκευής" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Το εξερχόμενο μέρος δεν ταιριάζει με το μέρος BuildOrder" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Η παραγγελία κατασκευής έχει ολοκληρωθεί" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Αυτή η έξοδος κατασκευής δεν έχει εκχωρηθεί πλήρως" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Ακέραιη ποσότητα που απαιτείται για ανιχνεύσιμα μέρη" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Ακέραιη ποσότητα που απαιτείται, καθώς ο λογαριασμός των υλικών περιέχει ανιχνεύσιμα μέρη" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Σειριακοί αριθμοί" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Τοποθεσία" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Αυτόματη Κατανομή Σειριακών Αριθμών" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Αυτόματη κατανομή των απαιτούμενων στοιχείων με τους αντίστοιχους σειριακούς αριθμούς" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Οι παρακάτω σειριακοί αριθμοί υπάρχουν ήδη ή δεν είναι έγκυροι" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Πρέπει να παρέχεται μια λίστα με τα αποτελέσματα κατασκευής" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Θέση αποθέματος για απορριφθείσες παραγωγές" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Απόρριψη Κατανομών" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Απορρίψτε τυχόν κατανομές αποθέματος για παραγωγές που έχουν απορριφθεί" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Αιτία απόρριψης προϊόντων κατασκευής" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Τοποθεσία για ολοκληρωμένα προϊόντα κατασκευής" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Κατάσταση" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Αποδοχή Ελλιπούς Δέσμευσης" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Ολοκλήρωσε τα προϊόντα εάν το απόθεμα δεν έχει δεσμευτεί πλήρως" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Αφαίρεση Ατελείωτων Προϊόντων" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Διαγράψτε τυχόν προϊόντα κατασκευής που δεν έχουν ολοκληρωθεί" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Δεν επιτρέπεται" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Αποδοχή ως κατανάλωση για αυτή την παραγγελία κατασκευής" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Αποδέσμευση πριν από την ολοκλήρωση αυτής της παραγγελίας κατασκευής" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Υπερ-δεσμευμένο Απόθεμα" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Πώς θέλετε να χειριστείτε το επιπλέον απόθεμα που έχει δεσμευτεί στην παραγγελία κατασκευής" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Μερικά στοιχεία αποθέματος έχουν υπερ-δεσμευτεί" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Αποδοχή Μη Δεσμευμένων" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Αποδεχτείτε ότι αντικείμενα αποθέματος δεν έχουν δεσμευτεί πλήρως σε αυτή την παραγγελία κατασκευής" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Το απαιτούμενο απόθεμα δεν έχει δεσμευτεί πλήρως" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Αποδοχή Μη Ολοκληρωμένων" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Αποδεχτείτε ότι ο απαιτούμενος αριθμός προϊόντων κατασκευής δεν έχει ολοκληρωθεί" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Ο απαιτούμενος αριθμός προϊόντων δεν έχει ολοκληρωθεί" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Η παραγγελία κατασκευής έχει ελλιπή προϊόντα" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Γραμμή Κατασκευής" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Προϊόν Κατασκευής" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Το προϊόν κατασκευής πρέπει να δείχνει στην ίδια κατασκευή" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Αντικείμενο Γραμμής Κατασκευής" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part πρέπει να δείχνει στο ίδιο εξάρτημα με τη εντολή κατασκευής" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Παραγωγή" msgid "Cancelled" msgstr "Ακυρώθηκε" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Αποσύνδεση Barcode" @@ -1715,14 +1786,14 @@ msgstr "Το Απόθεμα δεν έχει κατανεμηθεί πλήρως #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Ολοκληρωμένα Προϊόντα" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Ολοκληρωμένα Προϊόντα" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Εντολές Πώλησης" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Εκδόθηκε από" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Προτεραιότητα" @@ -1804,8 +1875,8 @@ msgstr "Προέλευση Αποθέματος" msgid "Stock can be taken from any available location." msgstr "Το απόθεμα μπορεί να ληφθεί από οποιαδήποτε διαθέσιμη τοποθεσία." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Προορισμός" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Χρήστης" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Σύνδεσμος" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Συνημμένο" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Το αρχείο λείπει" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Λείπει ο εξωτερικός σύνδεσμος" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Επιλέξτε αρχείο για επισύναψη" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Σχόλιο" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "Τοποθετήθηκε" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Αποστάλθηκε" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "Σε Καραντίνα" msgid "Legacy stock tracking entry" msgstr "Καταχώρηση παλαιού αποθέματος" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Το αντικείμενο αποθεμάτων δημιουργήθηκε" @@ -9880,7 +10027,7 @@ msgstr "Έγινε διαχωρισμός από το γονεϊκό αρχεί msgid "Split child item" msgstr "Διαχωρίστηκε θυγατρικό στοιχείο" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Έγινε συγχώνευση αποθεμάτων" @@ -9900,7 +10047,7 @@ msgstr "Η έξοδος της σειράς κατασκευής ολοκληρ msgid "Build order output rejected" msgstr "Η εντολή κατασκευής απορρίφθηκε" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Κατανάλωση με εντολή κατασκευής" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Κατασκευή" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po index 1c2cf37e88..91418799ac 100644 --- a/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" +"POT-Creation-Date: 2024-07-16 03:18+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -57,26 +57,26 @@ msgstr "" msgid "Enter date" msgstr "" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 #: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: order/models.py:1305 order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -133,7 +133,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -205,142 +205,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -404,9 +412,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 #: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -418,9 +426,9 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" @@ -430,8 +438,8 @@ msgstr "" #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -442,22 +450,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -465,8 +473,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -502,12 +510,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -557,9 +565,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 #: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -598,7 +606,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:62 msgid "Data File" msgstr "" @@ -652,7 +660,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -712,48 +720,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:879 company/serializers.py:388 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -764,7 +772,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -807,17 +815,17 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:234 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" @@ -836,15 +844,15 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:259 build/serializers.py:1224 #: build/templates/build/build_base.html:97 #: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -855,36 +863,36 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" @@ -900,8 +908,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:281 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" @@ -942,18 +950,19 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:324 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:633 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:328 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" #: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" @@ -967,8 +976,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:339 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" @@ -976,7 +985,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:353 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" @@ -988,12 +997,12 @@ msgstr "" #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" @@ -1009,14 +1018,14 @@ msgstr "" #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:369 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" @@ -1029,10 +1038,10 @@ msgid "Priority of this build order" msgstr "" #: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1069,18 +1078,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:960 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:462 +#: order/serializers.py:628 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:965 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1025 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1093,13 +1102,13 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1405 build/models.py:1661 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1405 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1109,35 +1118,35 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" @@ -1154,11 +1163,11 @@ msgstr "" msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1505 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1511 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -1170,21 +1179,21 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1648 build/serializers.py:856 order/serializers.py:1249 +#: order/serializers.py:1270 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" @@ -1204,366 +1213,425 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:641 order/serializers.py:1409 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:617 order/serializers.py:741 order/serializers.py:1736 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:649 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1312 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1303 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1555 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:500 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1582,7 +1650,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:501 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1638,8 +1706,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1716,14 +1784,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1754,8 +1822,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1765,7 +1833,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1777,7 +1845,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1805,8 +1873,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1820,11 +1888,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1834,7 +1902,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1852,12 +1920,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1880,7 +1948,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1909,15 +1977,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1933,15 +2001,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1953,6 +2021,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2157,8 +2235,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2307,70 +2385,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2378,1291 +2464,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:87 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:506 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 #: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3672,94 +3758,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4147,8 +4233,8 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:481 company/models.py:767 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" @@ -4159,7 +4245,7 @@ msgstr "" #: company/models.py:492 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4174,13 +4260,13 @@ msgid "Select manufacturer" msgstr "" #: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/templates/company/supplier_part.html:153 order/serializers.py:519 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" @@ -4201,9 +4287,9 @@ msgid "Parameter name" msgstr "" #: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" @@ -4212,10 +4298,10 @@ msgid "Parameter value" msgstr "" #: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" @@ -4225,10 +4311,11 @@ msgstr "" #: company/models.py:655 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: stock/models.py:776 stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" @@ -4247,15 +4334,15 @@ msgstr "" #: company/models.py:777 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" @@ -4264,7 +4351,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:784 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" @@ -4285,29 +4372,34 @@ msgid "Supplier part description" msgstr "" #: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: order/serializers.py:661 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:832 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:833 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: order/serializers.py:653 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" @@ -4316,12 +4408,12 @@ msgid "Part packaging" msgstr "" #: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" @@ -4329,7 +4421,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:867 part/models.py:2086 msgid "multiple" msgstr "" @@ -4361,7 +4453,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:386 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4373,7 +4465,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4431,16 +4523,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4454,7 +4546,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4463,19 +4555,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4629,7 +4721,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:527 msgid "Internal Part" msgstr "" @@ -4639,7 +4731,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4660,7 +4752,7 @@ msgid "New Parameter" msgstr "" #: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4725,12 +4817,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:516 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4745,7 +4837,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4776,16 +4868,16 @@ msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4823,83 +4915,87 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:58 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:63 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:72 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:83 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:93 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:100 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:222 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:379 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:384 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:393 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:398 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:405 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:409 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:414 importer/models.py:485 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:418 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:420 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:489 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:492 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:495 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:497 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:499 part/api.py:874 msgid "Valid" msgstr "" @@ -4915,27 +5011,35 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:90 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:103 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:164 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:165 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:178 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:182 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:185 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:188 msgid "Row has already been completed" msgstr "" @@ -4971,52 +5075,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5076,7 +5184,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5097,9 +5205,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5112,26 +5220,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5159,7 +5267,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5183,11 +5291,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5196,7 +5304,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5208,15 +5316,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5224,501 +5332,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1420 +#: order/serializers.py:1530 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1297 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1313 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1323 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:469 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:490 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:492 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:502 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:508 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:510 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:523 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:531 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:547 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:550 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:558 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:559 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:602 order/serializers.py:1391 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:608 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:618 order/serializers.py:742 order/serializers.py:1737 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:634 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:654 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:662 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:669 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:670 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:686 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:710 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:758 order/serializers.py:1753 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:774 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:785 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1139 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1200 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1261 order/serializers.py:1400 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1280 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1410 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1432 order/serializers.py:1538 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1435 order/serializers.py:1541 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1482 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1489 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1707 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1713 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1716 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1745 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1828 msgid "Line price currency" msgstr "" @@ -5928,13 +6036,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6048,8 +6156,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6114,7 +6222,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6144,30 +6253,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6179,7 +6279,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6192,11 +6292,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6204,19 +6304,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6233,14 +6333,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6257,13 +6357,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6301,7 +6401,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6345,29 +6445,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6376,753 +6485,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7130,7 +7270,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7148,7 +7288,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7156,303 +7296,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7604,7 +7753,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7791,7 +7940,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7840,7 +7989,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7854,51 +8003,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7956,9 +8101,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8004,7 +8149,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8077,8 +8222,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8178,7 +8323,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8222,7 +8367,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8346,7 +8491,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8407,10 +8552,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8422,55 +8569,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8764,7 +8911,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8892,7 +9039,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8994,7 +9141,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9007,26 +9154,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9040,11 +9172,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9065,13 +9197,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9128,7 +9260,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9153,9 +9285,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9171,7 +9303,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9195,7 +9327,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9233,7 +9365,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9245,12 +9377,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9258,7 +9390,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9267,7 +9399,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9284,7 +9416,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9301,236 +9433,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9578,222 +9710,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9825,7 +9952,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9881,7 +10008,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9901,7 +10028,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9962,7 +10089,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9970,7 +10097,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9993,17 +10120,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10012,12 +10139,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10058,7 +10185,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10115,12 +10242,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10147,7 +10270,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10256,7 +10379,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10534,11 +10657,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10757,9 +10880,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10780,7 +10903,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10799,12 +10922,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10868,7 +10991,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2185 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11204,7 +11327,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11437,7 +11560,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11451,7 +11574,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11596,81 +11719,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11806,7 +11929,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11826,30 +11949,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11881,7 +12004,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11889,364 +12012,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2181 templates/js/translated/forms.js:2197 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12393,7 +12552,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12410,34 +12569,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12533,61 +12692,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:1993 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2304 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2518 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3120 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3120 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3132 msgid "Select Columns" msgstr "" @@ -12688,7 +12847,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12737,7 +12896,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12769,343 +12928,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13318,108 +13476,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13643,7 +13814,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13701,476 +13872,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po index 22db8eee91..4e72c48fe6 100644 --- a/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Language: es_MX\n" @@ -56,26 +56,29 @@ msgstr "Detalles del error pueden encontrarse en el panel de administración" msgid "Enter date" msgstr "Ingrese la fecha" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Notas" @@ -132,7 +135,7 @@ msgstr "El dominio de correo electrónico proporcionado no está aprobado." msgid "Registration is disabled." msgstr "El registro ha sido desactivado." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Cantidad proporcionada no válida" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "La URL proporcionada no es un archivo de imagen válido" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Búlgaro" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Checo" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Danés" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Alemán" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Griego" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Inglés" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Español" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Español (México)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Persa" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finlandés" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Francés" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebreo" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hindi" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Húngaro" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italiano" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japonés" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Coreano" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Letón" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Holandés" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Noruego" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polaco" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugués" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugués (Brasileño)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Ruso" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Eslovaco" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Esloveno" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Serbio" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Sueco" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Tailandés" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turco" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Ucraniano" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamita" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Chino (Simplificado)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Chino (Tradicional)" @@ -403,9 +414,9 @@ msgstr "Los nombres duplicados no pueden existir bajo el mismo padre" msgid "Invalid choice" msgstr "Selección no válida" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Selección no válida" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Nombre" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Nombre" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Descripción" @@ -464,8 +475,8 @@ msgstr "Descripción" msgid "Description (optional)" msgstr "Descripción (opcional)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Ruta" @@ -501,12 +512,12 @@ msgstr "Error de servidor" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po index 1c2cf37e88..91418799ac 100644 --- a/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" +"POT-Creation-Date: 2024-07-16 03:18+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -57,26 +57,26 @@ msgstr "" msgid "Enter date" msgstr "" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 #: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: order/models.py:1305 order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -133,7 +133,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -205,142 +205,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -404,9 +412,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 #: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -418,9 +426,9 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" @@ -430,8 +438,8 @@ msgstr "" #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -442,22 +450,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -465,8 +473,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -502,12 +510,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -557,9 +565,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 #: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -598,7 +606,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:62 msgid "Data File" msgstr "" @@ -652,7 +660,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -712,48 +720,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:879 company/serializers.py:388 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -764,7 +772,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -807,17 +815,17 @@ msgstr "" msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:234 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" @@ -836,15 +844,15 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:259 build/serializers.py:1224 #: build/templates/build/build_base.html:97 #: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -855,36 +863,36 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" @@ -900,8 +908,8 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:281 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" @@ -942,18 +950,19 @@ msgstr "" msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:324 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:633 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:328 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" #: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" @@ -967,8 +976,8 @@ msgstr "" msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:339 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" @@ -976,7 +985,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:353 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" @@ -988,12 +997,12 @@ msgstr "" #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" @@ -1009,14 +1018,14 @@ msgstr "" #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:369 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" @@ -1029,10 +1038,10 @@ msgid "Priority of this build order" msgstr "" #: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1069,18 +1078,18 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:960 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:462 +#: order/serializers.py:628 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:965 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1025 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1093,13 +1102,13 @@ msgstr "" msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1405 build/models.py:1661 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1405 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1109,35 +1118,35 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" @@ -1154,11 +1163,11 @@ msgstr "" msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1505 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1511 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" @@ -1170,21 +1179,21 @@ msgstr "" msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1648 build/serializers.py:856 order/serializers.py:1249 +#: order/serializers.py:1270 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" @@ -1204,366 +1213,425 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:641 order/serializers.py:1409 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:617 order/serializers.py:741 order/serializers.py:1736 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:649 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1312 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1303 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1555 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:500 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1582,7 +1650,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:501 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1638,8 +1706,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1716,14 +1784,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1754,8 +1822,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1765,7 +1833,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1777,7 +1845,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1805,8 +1873,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1820,11 +1888,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1834,7 +1902,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1852,12 +1920,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1880,7 +1948,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1909,15 +1977,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1933,15 +2001,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1953,6 +2021,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2157,8 +2235,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2307,70 +2385,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2378,1291 +2464,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:87 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:506 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 #: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3672,94 +3758,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4147,8 +4233,8 @@ msgstr "" msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:481 company/models.py:767 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" @@ -4159,7 +4245,7 @@ msgstr "" #: company/models.py:492 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4174,13 +4260,13 @@ msgid "Select manufacturer" msgstr "" #: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/templates/company/supplier_part.html:153 order/serializers.py:519 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" @@ -4201,9 +4287,9 @@ msgid "Parameter name" msgstr "" #: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" @@ -4212,10 +4298,10 @@ msgid "Parameter value" msgstr "" #: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" @@ -4225,10 +4311,11 @@ msgstr "" #: company/models.py:655 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: stock/models.py:776 stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" @@ -4247,15 +4334,15 @@ msgstr "" #: company/models.py:777 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" @@ -4264,7 +4351,7 @@ msgstr "" msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:784 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" @@ -4285,29 +4372,34 @@ msgid "Supplier part description" msgstr "" #: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: order/serializers.py:661 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:832 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:833 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: order/serializers.py:653 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" @@ -4316,12 +4408,12 @@ msgid "Part packaging" msgstr "" #: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" @@ -4329,7 +4421,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:867 part/models.py:2086 msgid "multiple" msgstr "" @@ -4361,7 +4453,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:386 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4373,7 +4465,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4431,16 +4523,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4454,7 +4546,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4463,19 +4555,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4629,7 +4721,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:527 msgid "Internal Part" msgstr "" @@ -4639,7 +4731,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4660,7 +4752,7 @@ msgid "New Parameter" msgstr "" #: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4725,12 +4817,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:516 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4745,7 +4837,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4776,16 +4868,16 @@ msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4823,83 +4915,87 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:58 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:63 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:72 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:83 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:93 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:100 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:222 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:379 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:384 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:393 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:398 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:405 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:409 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:414 importer/models.py:485 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:418 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:420 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:489 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:492 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:495 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:497 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:499 part/api.py:874 msgid "Valid" msgstr "" @@ -4915,27 +5011,35 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:90 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:103 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:164 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:165 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:178 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:182 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:185 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:188 msgid "Row has already been completed" msgstr "" @@ -4971,52 +5075,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5076,7 +5184,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5097,9 +5205,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5112,26 +5220,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5159,7 +5267,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5183,11 +5291,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5196,7 +5304,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5208,15 +5316,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5224,501 +5332,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1420 +#: order/serializers.py:1530 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1297 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1313 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1323 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:469 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:490 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:492 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:502 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:508 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:510 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:523 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:531 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:547 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:550 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:558 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:559 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:602 order/serializers.py:1391 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:608 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:618 order/serializers.py:742 order/serializers.py:1737 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:634 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:654 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:662 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:669 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:670 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:686 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:710 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:758 order/serializers.py:1753 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:774 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:785 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1139 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1200 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1261 order/serializers.py:1400 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1280 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1410 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1432 order/serializers.py:1538 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1435 order/serializers.py:1541 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1482 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1489 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1707 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1713 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1716 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1745 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1828 msgid "Line price currency" msgstr "" @@ -5928,13 +6036,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6048,8 +6156,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6114,7 +6222,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6144,30 +6253,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6179,7 +6279,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6192,11 +6292,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6204,19 +6304,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6233,14 +6333,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6257,13 +6357,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6301,7 +6401,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6345,29 +6445,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6376,753 +6485,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7130,7 +7270,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7148,7 +7288,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7156,303 +7296,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7604,7 +7753,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7791,7 +7940,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7840,7 +7989,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7854,51 +8003,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7956,9 +8101,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8004,7 +8149,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8077,8 +8222,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8178,7 +8323,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8222,7 +8367,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8346,7 +8491,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8407,10 +8552,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8422,55 +8569,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8764,7 +8911,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8892,7 +9039,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8994,7 +9141,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9007,26 +9154,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9040,11 +9172,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9065,13 +9197,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9128,7 +9260,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9153,9 +9285,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9171,7 +9303,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9195,7 +9327,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9233,7 +9365,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9245,12 +9377,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9258,7 +9390,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9267,7 +9399,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9284,7 +9416,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9301,236 +9433,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9578,222 +9710,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9825,7 +9952,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9881,7 +10008,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9901,7 +10028,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9962,7 +10089,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9970,7 +10097,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9993,17 +10120,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10012,12 +10139,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10058,7 +10185,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10115,12 +10242,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10147,7 +10270,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10256,7 +10379,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10534,11 +10657,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10757,9 +10880,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10780,7 +10903,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10799,12 +10922,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10868,7 +10991,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2185 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11204,7 +11327,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11437,7 +11560,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11451,7 +11574,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11596,81 +11719,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11806,7 +11929,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11826,30 +11949,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11881,7 +12004,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11889,364 +12012,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2181 templates/js/translated/forms.js:2197 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12393,7 +12552,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12410,34 +12569,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12533,61 +12692,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:1993 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2304 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2518 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3120 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3120 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3132 msgid "Select Columns" msgstr "" @@ -12688,7 +12847,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12737,7 +12896,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12769,343 +12928,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13318,108 +13476,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13643,7 +13814,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13701,476 +13872,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po index 4035a3af0c..eb0fce7016 100644 --- a/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/et/LC_MESSAGES/django.po @@ -1,29 +1,29 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" +"Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-14 02:54+0000\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" +"Last-Translator: \n" +"Language-Team: Estonian\n" +"Language: et_EE\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: inventree\n" +"X-Crowdin-Project-ID: 452300\n" +"X-Crowdin-Language: et\n" +"X-Crowdin-File: /[inventree.InvenTree] l10/src/backend/InvenTree/locale/en/LC_MESSAGES/django.po\n" +"X-Crowdin-File-ID: 216\n" + #: InvenTree/api.py:272 msgid "API endpoint not found" msgstr "" #: InvenTree/api.py:505 msgid "User does not have permission to view this model" -msgstr "" +msgstr "Teil ei ole selle lehe vaatamiseks luba" #: InvenTree/conversion.py:160 #, python-brace-format @@ -58,26 +58,29 @@ msgstr "" #: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 #: build/serializers.py:540 build/templates/build/sidebar.html:25 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 #: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 #: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 -#: stock/serializers.py:694 stock/serializers.py:852 stock/serializers.py:948 -#: stock/serializers.py:998 stock/serializers.py:1309 stock/serializers.py:1398 -#: stock/serializers.py:1563 stock/templates/stock/stock_sidebar.html:25 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 #: templates/js/translated/part.js:1086 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" -msgstr "" +msgstr "Märkmed" #: InvenTree/format.py:164 #, python-brace-format @@ -90,31 +93,31 @@ msgstr "" #: InvenTree/forms.py:128 msgid "Enter password" -msgstr "" +msgstr "Salasõna" #: InvenTree/forms.py:129 msgid "Enter new password" -msgstr "" +msgstr "Sisesta uus parool" #: InvenTree/forms.py:138 msgid "Confirm password" -msgstr "" +msgstr "Kinnitage parool" #: InvenTree/forms.py:139 msgid "Confirm new password" -msgstr "" +msgstr "Kinnita uut parooli" #: InvenTree/forms.py:143 msgid "Old password" -msgstr "" +msgstr "Vana parool" #: InvenTree/forms.py:182 msgid "Email (again)" -msgstr "" +msgstr "Meili (uuesti)" #: InvenTree/forms.py:186 msgid "Email address confirmation" -msgstr "" +msgstr "E-posti aadressi kinnitus" #: InvenTree/forms.py:209 msgid "You must type the same email each time." @@ -130,9 +133,9 @@ msgstr "" #: InvenTree/forms.py:392 msgid "Registration is disabled." -msgstr "" +msgstr "Registreerimine on ajutiselt väljalülitatud." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -173,7 +176,7 @@ msgstr "" #: InvenTree/helpers_model.py:140 msgid "Connection error" -msgstr "" +msgstr "Ühenduse viga" #: InvenTree/helpers_model.py:145 InvenTree/helpers_model.py:152 msgid "Server responded with invalid status code" @@ -181,7 +184,7 @@ msgstr "" #: InvenTree/helpers_model.py:148 msgid "Exception occurred" -msgstr "" +msgstr "Esines tõrge" #: InvenTree/helpers_model.py:158 msgid "Server responded with invalid Content-Length value" @@ -205,35 +208,35 @@ msgstr "" #: InvenTree/locales.py:18 msgid "Arabic" -msgstr "" +msgstr "Araabia" #: InvenTree/locales.py:19 msgid "Bulgarian" -msgstr "" +msgstr "Bulgaaria keel" #: InvenTree/locales.py:20 msgid "Czech" -msgstr "" +msgstr "Tšehhi" #: InvenTree/locales.py:21 msgid "Danish" -msgstr "" +msgstr "Taani" #: InvenTree/locales.py:22 msgid "German" -msgstr "" +msgstr "Saksa keel" #: InvenTree/locales.py:23 msgid "Greek" -msgstr "" +msgstr "Kreeka keel" #: InvenTree/locales.py:24 msgid "English" -msgstr "" +msgstr "Inglise keel" #: InvenTree/locales.py:25 msgid "Spanish" -msgstr "" +msgstr "Hispaania keel" #: InvenTree/locales.py:26 msgid "Spanish (Mexican)" @@ -241,7 +244,7 @@ msgstr "" #: InvenTree/locales.py:27 msgid "Estonian" -msgstr "" +msgstr "Eesti" #: InvenTree/locales.py:28 msgid "Farsi / Persian" @@ -329,15 +332,15 @@ msgstr "" #: InvenTree/locales.py:49 msgid "Thai" -msgstr "" +msgstr "Tai keel" #: InvenTree/locales.py:50 msgid "Turkish" -msgstr "" +msgstr "Türgi keel" #: InvenTree/locales.py:51 msgid "Ukrainian" -msgstr "" +msgstr "Ukraina keel" #: InvenTree/locales.py:52 msgid "Vietnamese" @@ -412,7 +415,7 @@ msgid "Invalid choice" msgstr "" #: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 #: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 @@ -427,17 +430,17 @@ msgstr "" #: templates/js/translated/company.js:1165 #: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 #: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 -#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2716 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 #: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 @@ -457,14 +460,14 @@ msgstr "" #: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 #: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -473,7 +476,7 @@ msgid "Description (optional)" msgstr "" #: InvenTree/models.py:791 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2757 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -518,7 +521,7 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" -msgstr "" +msgstr "Valuuta" #: InvenTree/serializers.py:103 msgid "Select currency from available options" @@ -530,7 +533,7 @@ msgstr "" #: InvenTree/serializers.py:409 templates/InvenTree/settings/user.html:37 msgid "First Name" -msgstr "" +msgstr "Eesnimi" #: InvenTree/serializers.py:409 msgid "First name of the user" @@ -538,7 +541,7 @@ msgstr "" #: InvenTree/serializers.py:412 templates/InvenTree/settings/user.html:41 msgid "Last Name" -msgstr "" +msgstr "Perekonnanimi" #: InvenTree/serializers.py:412 msgid "Last name of the user" @@ -565,7 +568,7 @@ msgid "Is this user a superuser" msgstr "" #: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 #: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 @@ -605,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -659,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1234 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -673,7 +676,7 @@ msgstr "" #: InvenTree/templatetags/inventree_extras.py:184 msgid "Unknown database" -msgstr "" +msgstr "Tundmatu andmebaas" #: InvenTree/validators.py:32 InvenTree/validators.py:34 msgid "Invalid physical unit" @@ -701,7 +704,7 @@ msgstr "" #: InvenTree/views.py:412 templates/InvenTree/settings/user.html:20 msgid "Set Password" -msgstr "" +msgstr "Määra parool" #: InvenTree/views.py:434 msgid "Password fields must match" @@ -709,7 +712,7 @@ msgstr "" #: InvenTree/views.py:442 msgid "Wrong password provided" -msgstr "" +msgstr "Esitatud vale parool" #: InvenTree/views.py:650 templates/navbar.html:160 msgid "System Information" @@ -723,7 +726,7 @@ msgstr "" msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:291 build/serializers.py:1227 part/models.py:4227 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 #: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 @@ -731,7 +734,7 @@ msgstr "" msgid "Consumable" msgstr "" -#: build/api.py:292 build/serializers.py:1228 part/models.py:4221 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 #: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 @@ -752,7 +755,7 @@ msgstr "" msgid "Allocated" msgstr "" -#: build/api.py:303 company/models.py:879 company/serializers.py:388 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 @@ -771,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -786,36 +789,36 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1226 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 #: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 @@ -824,34 +827,34 @@ msgstr "" #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 #: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 #: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" -msgstr "" +msgstr "Tootekood" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1217 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 #: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 #: part/models.py:3232 part/models.py:3380 part/models.py:3401 #: part/models.py:3423 part/models.py:3559 part/models.py:3899 #: part/models.py:4062 part/models.py:4193 part/models.py:4552 -#: part/serializers.py:1180 part/serializers.py:1808 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -862,8 +865,8 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:445 -#: stock/serializers.py:882 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 @@ -879,119 +882,120 @@ msgstr "" #: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 #: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1009 +#: build/models.py:283 build/serializers.py:1009 #: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:296 order/serializers.py:630 -#: stock/models.py:837 stock/serializers.py:76 stock/serializers.py:1528 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:297 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 #: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 +#: build/models.py:341 order/models.py:521 order/models.py:2100 #: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2382 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 @@ -1000,17 +1004,17 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 #: templates/js/translated/build.js:2394 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 @@ -1022,24 +1026,24 @@ msgstr "" msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3236 part/models.py:1026 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 #: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 +#: build/models.py:385 common/models.py:122 common/models.py:136 #: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 #: templates/js/translated/build.js:2319 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1047,64 +1051,64 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:229 build/serializers.py:278 -#: build/serializers.py:876 order/models.py:559 order/serializers.py:462 -#: order/serializers.py:625 part/serializers.py:1549 part/serializers.py:1971 -#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:665 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:234 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:557 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:216 -#: build/serializers.py:263 build/serializers.py:1233 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 #: build/templates/build/detail.html:34 common/models.py:2550 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1384 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 #: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 @@ -1116,7 +1120,7 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:656 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 @@ -1134,52 +1138,52 @@ msgstr "" #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:856 order/serializers.py:1228 -#: order/serializers.py:1249 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:759 stock/serializers.py:1247 stock/serializers.py:1359 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 @@ -1190,28 +1194,28 @@ msgstr "" #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:93 build/serializers.py:1138 build/serializers.py:1218 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 #: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" @@ -1254,9 +1258,9 @@ msgstr "" msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:303 order/serializers.py:638 order/serializers.py:1388 -#: stock/serializers.py:676 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" @@ -1265,22 +1269,22 @@ msgid "Enter serial numbers for build outputs" msgstr "" #: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 -#: part/serializers.py:1200 stock/serializers.py:102 stock/serializers.py:687 -#: stock/serializers.py:847 stock/serializers.py:943 stock/serializers.py:1391 -#: stock/serializers.py:1647 stock/templates/stock/item_base.html:394 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 #: templates/js/translated/barcode.js:578 #: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" @@ -1329,17 +1333,17 @@ msgid "Location for completed build outputs" msgstr "" #: build/serializers.py:529 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:646 stock/admin.py:164 -#: stock/serializers.py:994 stock/serializers.py:1535 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 #: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" @@ -1403,7 +1407,7 @@ msgstr "" msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1291 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" @@ -1439,11 +1443,11 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:862 stock/serializers.py:1260 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:910 order/serializers.py:1282 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" @@ -1456,7 +1460,7 @@ msgstr "" msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:947 order/serializers.py:1534 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" @@ -1500,88 +1504,104 @@ msgstr "" msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1130 +#: build/serializers.py:1134 msgid "Supplier Part Number" -msgstr "" +msgstr "Tarnija osa number" -#: build/serializers.py:1131 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1132 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:456 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1133 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1134 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1137 part/admin.py:39 part/admin.py:398 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 #: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 msgid "Part ID" -msgstr "" +msgstr "Osa ID" -#: build/serializers.py:1139 build/serializers.py:1219 part/admin.py:402 +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 #: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1152 stock/serializers.py:589 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Seerianumber" + +#: build/serializers.py:1159 stock/serializers.py:590 #: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 #: templates/js/translated/build.js:2519 msgid "Allocated Quantity" msgstr "" -#: build/serializers.py:1153 stock/templates/stock/item_base.html:340 +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 msgid "Available Quantity" msgstr "" -#: build/serializers.py:1221 part/admin.py:45 part/stocktake.py:221 +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 msgid "Part Description" msgstr "" -#: build/serializers.py:1222 +#: build/serializers.py:1229 msgid "Part Category ID" msgstr "" -#: build/serializers.py:1223 +#: build/serializers.py:1230 msgid "Part Category Name" msgstr "" -#: build/serializers.py:1229 common/models.py:1494 part/admin.py:113 +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 #: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1230 +#: build/serializers.py:1237 msgid "Inherited" msgstr "" -#: build/serializers.py:1231 part/models.py:4275 +#: build/serializers.py:1238 part/models.py:4275 #: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 #: templates/js/translated/build.js:2714 msgid "Allow Variants" msgstr "" -#: build/serializers.py:1235 part/models.py:4072 part/models.py:4544 +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1244 build/templates/build/detail.html:236 +#: build/serializers.py:1251 build/templates/build/detail.html:236 #: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1249 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:887 part/serializers.py:1567 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 #: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 #: templates/js/translated/part.js:2154 @@ -1589,31 +1609,31 @@ msgstr "" msgid "On Order" msgstr "" -#: build/serializers.py:1254 part/serializers.py:1569 +#: build/serializers.py:1261 part/serializers.py:1573 #: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1259 part/bom.py:172 part/serializers.py:1594 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1263 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1264 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1265 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1266 part/serializers.py:894 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1621,7 +1641,7 @@ msgstr "" #: order/status_codes.py:37 order/status_codes.py:64 order/status_codes.py:82 #: templates/js/translated/table_filters.js:598 msgid "Pending" -msgstr "" +msgstr "Ootel" #: build/status_codes.py:12 msgid "Production" @@ -1630,15 +1650,15 @@ msgstr "" #: build/status_codes.py:13 order/status_codes.py:15 order/status_codes.py:45 #: order/status_codes.py:70 msgid "Cancelled" -msgstr "" +msgstr "Katkestatud" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 #: order/templates/order/sales_order_base.html:165 report/models.py:444 msgid "Complete" -msgstr "" +msgstr "Valmis" #: build/tasks.py:184 msgid "Stock required for build order" @@ -1766,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:175 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 #: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1804,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1815,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1855,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1872,9 +1892,9 @@ msgstr "" #: stock/templates/stock/item_base.html:162 #: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1886,7 +1906,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:190 #: templates/js/translated/build.js:2374 msgid "Created" -msgstr "" +msgstr "Loodud" #: build/templates/build/detail.html:144 msgid "No target date set" @@ -2133,11 +2153,11 @@ msgstr "" #: common/models.py:1119 msgid "No group" -msgstr "" +msgstr "Grupp puudub" #: common/models.py:1218 msgid "Restart required" -msgstr "" +msgstr "Taaskäivitamine on vajalik" #: common/models.py:1220 msgid "A setting has been changed which requires a server restart" @@ -2288,7 +2308,7 @@ msgstr "" #: common/models.py:1341 msgid "Automatic Backup" -msgstr "" +msgstr "Automaatne varundus" #: common/models.py:1342 msgid "Enable automatic backup of database and media files" @@ -2328,7 +2348,7 @@ msgstr "" #: common/models.py:1381 templates/InvenTree/settings/sidebar.html:31 msgid "Barcode Support" -msgstr "" +msgstr "Vöötkoodi tugi" #: common/models.py:1382 msgid "Enable barcode scanner support in the web interface" @@ -3583,11 +3603,11 @@ msgstr "" #: common/models.py:2528 common/models.py:2529 common/models.py:2678 #: common/models.py:2679 common/models.py:2924 common/models.py:2925 -#: common/models.py:3251 common/models.py:3252 importer/models.py:85 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 #: part/models.py:3269 part/models.py:3356 part/models.py:3430 #: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" @@ -3595,8 +3615,8 @@ msgstr "" msgid "Price break quantity" msgstr "" -#: common/models.py:2558 company/serializers.py:506 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 #: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 @@ -3693,16 +3713,16 @@ msgid "Title" msgstr "" #: common/models.py:2977 common/models.py:3235 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 #: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 #: templates/js/translated/part.js:2475 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 @@ -4208,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:765 -#: stock/serializers.py:444 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4237,49 +4257,49 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:519 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 #: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 #: stock/models.py:2465 templates/js/translated/company.js:1166 #: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 -#: templates/js/translated/stock.js:1522 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 +#: company/models.py:603 company/templates/company/supplier_part.html:168 #: part/admin.py:57 part/models.py:1115 part/models.py:3733 #: part/templates/part/part_base.html:293 #: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 @@ -4287,36 +4307,37 @@ msgstr "" msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:776 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 #: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 @@ -4324,101 +4345,106 @@ msgstr "" #: templates/js/translated/company.js:511 #: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4250 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:772 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2079 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2080 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:796 stock/serializers.py:1545 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 +#: company/models.py:848 templates/js/translated/company.js:1651 #: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2086 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4430,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:386 part/admin.py:126 part/serializers.py:886 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4500,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 #: order/templates/order/sales_order_base.html:148 stock/models.py:818 -#: stock/models.py:819 stock/serializers.py:1295 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4698,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:527 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4708,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:892 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4728,7 +4754,11 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 #: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4794,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:516 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 #: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4814,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4832,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:890 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:980 stock/serializers.py:1158 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4892,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3913 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4984,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -5040,7 +5094,7 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" @@ -5149,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5170,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5185,8 +5239,8 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 @@ -5194,17 +5248,17 @@ msgstr "" #: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5232,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5256,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5269,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5281,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5297,324 +5351,324 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 +#: order/models.py:1436 order/templates/order/order_base.html:196 #: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:937 stock/serializers.py:606 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1399 -#: order/serializers.py:1509 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1276 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" @@ -5626,163 +5680,172 @@ msgstr "" msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:321 order/serializers.py:1292 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:331 order/serializers.py:1302 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:469 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:490 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:492 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:502 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:508 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:510 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:523 part/models.py:1001 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:531 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:547 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:550 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:559 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:599 order/serializers.py:1370 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:605 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:615 order/serializers.py:723 order/serializers.py:1716 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:631 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:639 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:650 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:651 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:667 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:691 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:739 order/serializers.py:1732 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:755 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:766 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1118 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1179 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1240 order/serializers.py:1379 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1259 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1389 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1411 order/serializers.py:1517 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1414 order/serializers.py:1520 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1461 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1468 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1686 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1692 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1695 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1724 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1807 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5995,10 +6058,10 @@ msgstr "" #: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 #: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6113,7 +6176,7 @@ msgstr "" #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 #: templates/js/translated/part.js:1078 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6212,7 +6275,7 @@ msgstr "" #: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 #: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" @@ -6235,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:868 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6260,7 +6323,7 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:885 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 #: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" @@ -6290,7 +6353,7 @@ msgid "Category Path" msgstr "" #: part/admin.py:325 part/models.py:398 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 @@ -6313,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1334 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1349 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6414,7 +6477,7 @@ msgid "BOM Valid" msgstr "" #: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 -#: part/serializers.py:419 part/serializers.py:1190 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 @@ -6432,7 +6495,7 @@ msgstr "" msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:893 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6457,7 +6520,7 @@ msgid "Default location for parts in this category" msgstr "" #: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 -#: templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" @@ -6857,8 +6920,8 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:540 #: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" @@ -7244,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:612 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7252,312 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:891 +#: part/serializers.py:893 msgid "Revisions" msgstr "" -#: part/serializers.py:896 +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:899 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "" -#: part/serializers.py:929 part/templates/part/copy_part.html:9 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 #: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "" -#: part/serializers.py:930 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:936 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:937 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:943 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:958 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1192 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1202 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1208 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1209 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1214 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1215 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1220 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1221 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1229 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1335 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1342 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1350 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1357 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1386 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1387 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1410 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1417 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1420 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1571 part/templates/part/part_base.html:235 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 #: templates/js/translated/bom.js:1219 msgid "Can Build" msgstr "" -#: part/serializers.py:1809 +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1817 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1818 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1829 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1830 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1835 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1836 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1873 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1874 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1950 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1953 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1956 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1965 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1973 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1996 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" #: part/stocktake.py:225 templates/js/translated/part.js:1072 #: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 -#: templates/js/translated/purchase_order.js:2084 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7709,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -8058,8 +8121,8 @@ msgstr "" #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 -#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8105,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8257,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8279,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8867,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -9097,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9110,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 -#: templates/js/translated/build.js:2530 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9143,7 +9191,7 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" @@ -9168,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:595 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9258,7 +9306,7 @@ msgstr "" #: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9274,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1152 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9298,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:600 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9361,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9370,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9387,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:479 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9432,7 +9480,7 @@ msgstr "" msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:797 stock/serializers.py:1546 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" @@ -9444,7 +9492,7 @@ msgstr "" msgid "Serial number for this item" msgstr "" -#: stock/models.py:841 stock/serializers.py:1529 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" @@ -9521,7 +9569,7 @@ msgstr "" msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1522 stock/serializers.py:722 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" @@ -9553,7 +9601,7 @@ msgstr "" msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1660 stock/serializers.py:1435 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" @@ -9613,7 +9661,7 @@ msgstr "" msgid "Test notes" msgstr "" -#: stock/models.py:2486 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" @@ -9689,209 +9737,209 @@ msgstr "" msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:322 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:451 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:452 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:471 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:592 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:598 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:602 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:608 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:627 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:633 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:657 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:670 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:677 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:688 stock/serializers.py:1392 stock/serializers.py:1648 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:695 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:705 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:760 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:767 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:768 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:773 stock/serializers.py:853 stock/serializers.py:949 -#: stock/serializers.py:999 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:781 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:789 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:800 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:813 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:848 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:883 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:896 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:913 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:944 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:981 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:987 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1083 stock/serializers.py:1160 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1153 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1272 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1296 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1302 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1310 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1320 stock/serializers.py:1574 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1399 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1404 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1405 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1410 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1411 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1421 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1488 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1517 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1536 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1564 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9923,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9979,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9999,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -10060,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -10068,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -10091,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10110,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10241,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10350,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10851,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 #: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10962,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11298,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11710,7 +11758,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" @@ -12023,13 +12071,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:369 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:371 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" @@ -12288,9 +12336,9 @@ msgid "No builds matching query" msgstr "" #: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 #: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" @@ -12298,7 +12346,7 @@ msgstr "" msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" @@ -12367,7 +12415,7 @@ msgstr "" msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" @@ -12663,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12867,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12899,7 +12947,7 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:334 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" @@ -13101,19 +13149,19 @@ msgid "Delete Part Parameter Template" msgstr "" #: templates/js/translated/part.js:1722 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" #: templates/js/translated/part.js:1866 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" #: templates/js/translated/part.js:1912 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" @@ -13154,7 +13202,7 @@ msgid "No category" msgstr "" #: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" @@ -13166,7 +13214,7 @@ msgstr "" msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" @@ -13447,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13772,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13830,484 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1456 +#: templates/js/translated/stock.js:1537 msgid "Edit test result" msgstr "" -#: templates/js/translated/stock.js:1457 templates/js/translated/stock.js:1731 +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 msgid "Delete test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" @@ -14710,7 +14779,7 @@ msgstr "" #: templates/search.html:15 msgid "Close search menu" -msgstr "" +msgstr "Sulgege otsingumenüü" #: templates/socialaccount/authentication_error.html:5 msgid "Social Network Login Failure" @@ -14940,3 +15009,4 @@ msgstr "" #: users/models.py:408 msgid "Permission to delete items" msgstr "" + diff --git a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po index 96c62781be..73d666109d 100644 --- a/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -56,26 +56,29 @@ msgstr "جزئیات خطا را می توان در پنل مدیریت پیدا msgid "Enter date" msgstr "تاریخ را وارد کنید" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "یادداشت" @@ -132,7 +135,7 @@ msgstr "دامنه ایمیل ارائه شده تایید نشده است." msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "فایل‌های داده" @@ -651,7 +662,7 @@ msgstr "آدرس فایل تصویری از راه دور" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "مرجع سفارش فروش" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "منبع محل" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "مقصد" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "تایید" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po index f6dbd23f35..02f8161ea5 100644 --- a/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Finnish\n" "Language: fi_FI\n" @@ -56,26 +56,29 @@ msgstr "Virheen tiedot löytyvät hallintapaneelista" msgid "Enter date" msgstr "Anna päivämäärä" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Merkinnät" @@ -132,7 +135,7 @@ msgstr "Annetun sähköpostiosoitteen verkkotunnusta ei hyväksytä." msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Annettu määrä on virheellinen" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Annettu URL ei ole kelvollinen kuvatiedosto" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 +msgid "Bulgarian" +msgstr "" + +#: InvenTree/locales.py:20 msgid "Czech" msgstr "tšekki" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "tanska" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "saksa" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "kreikka" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "englanti" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "espanja" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "espanja (Meksiko)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "farsi / persia" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "suomi" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "ranska" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "heprea" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "unkari" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "italia" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "japani" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "korea" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "hollanti" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "norja" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "puola" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "portugali" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "portugali (Brasilia)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "venäjä" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "slovenia" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "ruotsi" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "thai" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "turkki" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "vietnam" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "Virheellinen valinta" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Virheellinen valinta" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Nimi" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Nimi" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Kuvaus" @@ -464,8 +475,8 @@ msgstr "Kuvaus" msgid "Description (optional)" msgstr "Kuvaus (valinnainen)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Polku" @@ -501,12 +512,12 @@ msgstr "Palvelinvirhe" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Täytyy olla kelvollinen luku" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "Virheellinen arvo" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Datatiedosto" @@ -651,7 +662,7 @@ msgstr "Kuvatiedoston URL" msgid "Downloading images from remote URL is not enabled" msgstr "Kuvien lataaminen ei ole käytössä" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "Järjestelmän tiedot" msgid "About InvenTree" msgstr "Tietoja InvenTree:stä" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Saatavilla" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Osa" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Ulkoinen linkki" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Linkki ulkoiseen URLiin" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Määrä" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Varastotuote" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Sarjanumerot" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Sijainti" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Tila" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Ei sallittu" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Valmistajan osanumero" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Sarjanumero" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Seurattavissa" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "Peruttu" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Poista viivakoodin linkitys" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Prioriteetti" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "Valmis" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "Liitteet" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "päivää" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Komponentti" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Ostettavissa" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Sisäiset hinnat" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Sisäisen hinnan ohitus" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Sivun koko" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Täytä sarjanumerot automaattisesti" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Salli salasananpalautus" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Salli rekisteröinti" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "Salli SSO" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "Salli SSO kirjautumissivuilla" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "Salli SSO rekisteröinti" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Sähköposti vaaditaan" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "Sähköpostiosoite kahdesti" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Salasana kahdesti" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Sallitut verkkotunnukset" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Pakota MFA" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Näytä uutiset" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Näytä uutiset kotisivulla" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Käyttäjä" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Hinta" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Salaisuus" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Isäntä" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Otsikko" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Linkki" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Julkaistu" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Julkaisija" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Yhteenveto" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "Kuva" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Kuvatiedosto" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Liite" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Puuttuva tiedosto" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Puuttuva ulkoinen linkki" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Valitse liitettävä tiedosto" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Kommentti" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "Valmistaja" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Valitse valmistaja" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Arvo" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Toimittaja" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Valitse toimittaja" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Toimittajan varastonimike" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Valitse valmistajan osa" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Muistiinpano" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Asiakas" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Puhelin" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Poista" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Hinta yhteensä" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Tilauksen viite" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Asiakkaan viite " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Vastaanotettu" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Lähetetty" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Seurantakoodi" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Laskunumero" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Viivakoodi" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Poista rivi" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Toiminnot" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Avainsanat" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Kategoria" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Oletus avainsanat" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Kuvake" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Kuvake (valinnainen)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Päivämäärä" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "Muut merkinnät" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "Raportti" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Käytössä" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "Valmistajan osanumero" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Luo raportti" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "Muokkaa" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Sarjanumero" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Sarjanumero" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "Asetettu karanteeniin" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Varastotuote luotu" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "seuraava sivu" msgid "Navigate to next serial number" msgstr "Siirry seuraavaan sarjanumeroon" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Uusi sijainti" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Poista" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Vahvista sähköpostiosoite" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Vahvista" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Skannaa viivakoodi" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po index b44f420bb0..8b49c143ff 100644 --- a/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:55\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -56,26 +56,29 @@ msgstr "Les détails de l'erreur peuvent être trouvées dans le panneau d'admin msgid "Enter date" msgstr "Entrer la date" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Notes" @@ -132,7 +135,7 @@ msgstr "Le domaine e-mail fourni n'est pas approuvé." msgid "Registration is disabled." msgstr "L'enregistrement est désactivé." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Quantité fournie invalide" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "L'URL fournie n'est pas un fichier image valide" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgare" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Tchèque" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Danois" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Allemand" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Grec" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Anglais" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Espagnol" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Espagnol (Mexique)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Perse" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finnois" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Français" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hébreu" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hindi" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Hongrois" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italien" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japonais" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Coréen" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Letton" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Néerlandais" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norvégien" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polonais" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugais" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugais (Brésilien)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "Roumain" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Russe" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Slovaque" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovénien" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Serbe" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Suédois" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thaïlandais" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turc" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Ukrainien" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamien" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Chinois (Simplifié)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Chinois (Traditionnel)" @@ -403,9 +414,9 @@ msgstr "Les noms dupliqués ne peuvent pas exister sous le même parent" msgid "Invalid choice" msgstr "Choix invalide" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Choix invalide" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Nom" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Nom" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Description" @@ -464,8 +475,8 @@ msgstr "Description" msgid "Description (optional)" msgstr "Description (facultative)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Chemin d'accès" @@ -501,12 +512,12 @@ msgstr "Erreur serveur" msgid "An error has been logged by the server." msgstr "Une erreur a été loguée par le serveur." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Doit être un nombre valide" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Bienvenue dans InvenTree" msgid "Invalid value" msgstr "Valeur non valide" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Fichier de données" @@ -651,7 +662,7 @@ msgstr "URL du fichier image distant" msgid "Downloading images from remote URL is not enabled" msgstr "Le téléchargement des images depuis une URL distante n'est pas activé" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Échec de la vérification du processus d'arrière-plan" @@ -711,48 +722,48 @@ msgstr "Informations système" msgid "About InvenTree" msgstr "À propos d'InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "La construction doit être annulée avant de pouvoir être supprimée" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Consommable" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Facultatif" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Suivi" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Allouée" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Disponible" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Ordre de Fabrication" @@ -778,72 +789,72 @@ msgstr "Ordre de Fabrication" msgid "Build Orders" msgstr "Ordres de Fabrication" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Choix invalide pour la fabrication parente" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "Un utilisateur ou un groupe responsable doit être spécifié" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "La pièce de commande de construction ne peut pas être changée" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Référence de l' Ordre de Fabrication" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Référence" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Brève description de la fabrication (optionnel)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Fabrication parente" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "BuildOrder associé a cette fabrication" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "BuildOrder associé a cette fabrication" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Pièce" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Sélectionnez la pièce à construire" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Bon de commande de référence" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Commande de vente à laquelle cette construction est allouée" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Emplacement d'origine" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Sélectionner l'emplacement à partir duquel le stock doit être pris pour cette construction (laisser vide pour prendre à partir de n'importe quel emplacement de stock)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Emplacement cible" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Sélectionnez l'emplacement où les éléments complétés seront stockés" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Quantité a fabriquer" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Nombre de stock items à construire" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Articles terminés" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Nombre d'articles de stock qui ont été terminés" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "État de la construction" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Code de statut de construction" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Code de lot" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Code de lot pour ce build output" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Date de création" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Date d'achèvement cible" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Date cible pour l'achèvement de la construction. La construction sera en retard après cette date." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Date d'achèvement" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "achevé par" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Émis par" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Utilisateur ayant émis cette commande de construction" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Responsable" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Utilisateur ou groupe responsable de cet ordre de construction" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Lien Externe" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Lien vers une url externe" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Priorité de fabrication" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Priorité de cet ordre de fabrication" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Priorité de cet ordre de fabrication" msgid "Project Code" msgstr "Code du projet" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Code de projet pour cet ordre de construction" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "Échec du déchargement de la tâche pour terminer les allocations de construction" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "La commande de construction {build} a été effectuée" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Une commande de construction a été effectuée" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Pas d'ordre de production défini" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "L'ordre de production a déjà été réalisé" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "L'ordre de production de correspond pas à l'ordre de commande" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "La quantité doit être supérieure à zéro" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "La quantité ne peut pas être supérieure à la quantité de sortie" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "La sortie de compilation {serial} n'a pas réussi tous les tests requis" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Création de l'objet" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Création de l'objet" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Quantité" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Quantité requise pour la commande de construction" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "L'élément de construction doit spécifier une sortie de construction, la pièce maîtresse étant marquée comme objet traçable" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "La quantité allouée ({q}) ne doit pas excéder la quantité disponible ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "L'article de stock est suralloué" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "La quantité allouée doit être supérieure à zéro" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "La quantité doit être de 1 pour stock sérialisé" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "L'article de stock sélectionné ne correspond pas à la ligne BOM" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Article en stock" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Stock d'origine de l'article" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Quantité de stock à allouer à la construction" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Installer dans" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Stock de destination de l'article" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Nom de l'article" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Sortie d'assemblage" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "L'ordre de production ne correspond pas à l'ordre parent" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "La pièce en sortie ne correspond pas à la pièce de l'ordre de construction" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Cet ordre de production a déjà été produit" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Cet ordre de production n'est pas complètement attribué" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Entrer la quantité désiré pour la fabrication" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Quantité entière requise pour les pièces à suivre" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Quantité entière requise, car la facture de matériaux contient des pièces à puce" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Numéros de série" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Entrer les numéros de séries pour la fabrication" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Emplacement" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Allouer automatiquement les numéros de série" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Affecter automatiquement les éléments requis avec les numéros de série correspondants" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "Les numéros de série doivent être fournis pour les pièces traçables" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Les numéros de série suivants existent déjà, ou sont invalides" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Une liste d'ordre de production doit être fourni" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Emplacement du stock pour les sorties épuisées" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Ignorer les allocations" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Abandonner les allocations de stock pour les sorties abandonnées" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Motif de l'élimination des produits de construction(s)" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Emplacement des ordres de production achevés" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "État" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Accepter l'allocation incomplète" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Compléter les sorties si le stock n'a pas été entièrement alloué" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "Consommation du stock alloué" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Retirer les sorties incomplètes" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Supprimer toutes les sorties de construction qui n'ont pas été complétées" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Non permis" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Accepter comme consommé par cet ordre de construction" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Désaffecter avant de terminer cette commande de fabrication" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Stock suralloué" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Comment voulez-vous gérer les articles en stock supplémentaires assignés à l'ordre de construction" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Certains articles de stock ont été suralloués" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Accepter les non-alloués" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepter les articles de stock qui n'ont pas été complètement alloués à cette ordre de production" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Le stock requis n'a pas encore été totalement alloué" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Accepter les incomplèts" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepter que tous les ordres de production n'aient pas encore été achevés" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "La quantité nécessaire n'a pas encore été complétée" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "L'ordre de production a des sorties incomplètes" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Chaîne d'assemblage" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Sortie d'assemblage" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "La sortie de la construction doit pointer vers la même construction" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Élément de la ligne de construction" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part doit pointer sur la même pièce que l'ordre de construction" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "L'article doit être en stock" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantité disponible ({q}) dépassée" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "La sortie de construction doit être spécifiée pour l'allocation des pièces suivies" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "La sortie de la construction ne peut pas être spécifiée pour l'allocation des pièces non suivies" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Les articles d'allocation doivent être fournis" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Emplacement de stock où les pièces doivent être fournies (laissez vide pour les prendre à partir de n'importe quel emplacement)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Emplacements exclus" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Exclure les articles de stock de cet emplacement sélectionné" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Stock interchangeable" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Les articles de stock à plusieurs emplacements peuvent être utilisés de manière interchangeable" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Stock de substitution" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Autoriser l'allocation de pièces de remplacement" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Objets Optionnels" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Affecter des éléments de nomenclature facultatifs à l'ordre de fabrication" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "ID de composant" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Numéro de série" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Description pièce" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Traçable" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Article du BOM" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "Stock alloué" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "En Commande" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "En Production" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Stock disponible" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Fabrication" msgid "Cancelled" msgstr "Annulé" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Afficher le QR Code" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Délier le code-barre" @@ -1715,14 +1786,14 @@ msgstr "Le stock n'a pas été entièrement alloué à cet ordre de construction #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Sorties de Construction terminées" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Sorties de Construction terminées" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Commandes" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Émis par" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Priorité" @@ -1804,8 +1875,8 @@ msgstr "Stock d'origine" msgid "Stock can be taken from any available location." msgstr "Le stock peut être pris à partir de n'importe quel endroit disponible." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Destination" @@ -1819,11 +1890,11 @@ msgstr "Pièces allouées" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Lot" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Créé le" @@ -1851,13 +1922,13 @@ msgstr "Terminé" msgid "Build not complete" msgstr "Compilation incomplète" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Commandes de constructions filles" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Allouer le stock à la construction" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Allouer automatiquement" msgid "Manually allocate stock to build" msgstr "Allouer manuellement le stock à construire" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Allouer le stock" @@ -1908,15 +1979,15 @@ msgstr "Créer une nouvelle sortie de construction" msgid "New Build Output" msgstr "Nouvelle sortie de construction" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Stock Consommé" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Sorties de Construction terminées" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Sorties de Construction terminées" msgid "Attachments" msgstr "Pieces jointes" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Notes de construction" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "Allocation terminée" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "Toutes les lignes ont été entièrement attribuées" @@ -1952,6 +2023,16 @@ msgstr "Nouvel ordre de construction" msgid "Build Order Details" msgstr "Détails de la commande de construction" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Sorties incomplètes" @@ -2156,8 +2237,8 @@ msgstr "Fréquence de mise à jour des taux de change (définir à zéro pour d #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "jours" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Activer le champ de modification de la pièce" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 +msgid "Only allow revisions for assembly parts" +msgstr "" + +#: common/models.py:1418 +msgid "Allow Deletion from Assembly" +msgstr "" + +#: common/models.py:1419 msgid "Allow deletion of parts which are used in an assembly" msgstr "Permettre la suppression de pièces utilisées dans un assemblage" -#: common/models.py:1418 +#: common/models.py:1424 msgid "IPN Regex" msgstr "Regex IPN" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Expression régulière pour la correspondance avec l'IPN de la Pièce" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Autoriser les IPN dupliqués" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Permettre à plusieurs pièces de partager le même IPN" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Autoriser l'édition de l'IPN" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Permettre de modifier la valeur de l'IPN lors de l'édition d'une pièce" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Copier les données de la pièce" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Copier les données des paramètres par défaut lors de la duplication d'une pièce" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Copier les données des paramètres de la pièce" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Copier les données des paramètres par défaut lors de la duplication d'une pièce" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Copier les données de test de la pièce" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Copier les données de test par défaut lors de la duplication d'une pièce" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Copier les templates de paramètres de catégorie" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Copier les templates de paramètres de la catégorie lors de la création d'une pièce" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Copier les templates de paramètres de la catégorie lors de la créatio msgid "Template" msgstr "Modèle" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Les pièces sont des templates par défaut" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Assemblage" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Les pièces peuvent être assemblées à partir d'autres composants par défaut" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Composant" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Les pièces peuvent être utilisées comme sous-composants par défaut" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Achetable" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Les pièces sont achetables par défaut" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Vendable" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Les pièces sont vendables par défaut" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Les pièces sont traçables par défaut" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Virtuelle" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Les pièces sont virtuelles par défaut" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Afficher l'import dans les vues" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Afficher l'assistant d'importation pour certaine vues de produits" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Afficher les pièces connexes" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Afficher les pièces connexes à une pièce" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Stock initial" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Permettre la création d'un stock initial lors de l'ajout d'une nouvelle pièce" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Données initiales du fournisseur" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Permettre la création des données initiales du fournisseur lors de l'ajout d'une nouvelle pièce" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Format d'affichage du nom de la pièce" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Format pour afficher le nom de la pièce" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Icône de catégorie par défaut" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Icône par défaut de la catégorie de la pièce (vide signifie aucune icône)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Renforcer les unités des paramètres" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "Si des unités sont fournies, les valeurs de paramètre doivent correspondre aux unités spécifiées" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Nombre minimal de décimales" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Nombre minimum de décimales à afficher lors de l'affichage des prix" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Utiliser le prix fournisseur" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Inclure les réductions de prix dans le calcul du prix global" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Remplacer l'historique des achats" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "La tarification historique des bons de commande remplace les réductions de prix des fournisseurs" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Utiliser les prix des articles en stock" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Utiliser les prix des données de stock saisies manuellement pour calculer les prix" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Âge de tarification des articles de stock" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Exclure les articles en stock datant de plus de ce nombre de jours des calculs de prix" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Utiliser les prix variants" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Inclure la tarification variante dans le calcul global des prix" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Variantes actives uniquement" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "N'utiliser que des pièces de variante actives pour calculer le prix de la variante" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Intervalle de regénération des prix" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Nombre de jours avant la mise à jour automatique du prix de la pièce" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Prix internes" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Activer les prix internes pour les pièces" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Substitution du prix interne" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Si disponible, les prix internes remplacent les calculs de la fourchette de prix" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Activer l'impression d'étiquettes" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Activer l'impression d'étiquettes depuis l'interface Web" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Étiquette image DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Résolution DPI lors de la génération de fichiers image pour fournir aux plugins d'impression d'étiquettes" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Activer les rapports" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Activer la génération de rapports" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Mode Débogage" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Générer des rapports en mode debug (sortie HTML)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "Journal des erreurs" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Taille de la page" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Taille de page par défaut pour les rapports PDF" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Activer les rapports de test" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Activer la génération de rapports de test" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Joindre des rapports de test" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Lors de l'impression d'un rapport de test, joignez une copie du rapport de test à l'article en stock associé" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Numéro de Série Universellement Unique" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "Les numéros de série pour les articles en stock doivent être uniques au niveau global" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Remplir automatiquement les Numéros de Série" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Remplir automatiquement les numéros de série dans les formulaires" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Supprimer le stock épuisé" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Modèle de code de lot" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Modèle pour générer des codes par défaut pour les articles en stock" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Expiration du stock" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Activer la fonctionnalité d'expiration du stock" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Vendre le stock expiré" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Autoriser la vente de stock expiré" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Délai de péremption du stock" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Nombre de jours pendant lesquels les articles en stock sont considérés comme périmés avant d'expirer" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Construction de stock expirée" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Autoriser la construction avec un stock expiré" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Contrôle de la propriété des stocks" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Activer le contrôle de la propriété sur les emplacements de stock et les articles" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Icône par défaut de l'emplacement du stock" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Icône par défaut de l'emplacement du stock (vide signifie aucune icône)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Afficher les pièces en stock installées" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Modèle de référence de commande de construction" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Modèle requis pour générer le champ de référence de l'ordre de construction" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Activer les retours de commandes" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Activer la fonctionnalité de retour de commande dans l'interface utilisateur" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Modèle de référence de retour de commande" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Modifier les retours de commandes terminées" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Autoriser la modification des retours après leur enregistrement" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Modèle de référence de bon de commande" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Modèle requis pour générer le champ de référence du bon de commande" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Expédition par défaut du bon de commande" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Activer la création d'expédition par défaut avec les bons de commandes" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Modifier les commandes de vente terminées" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Autoriser la modification des commandes de vente après avoir été expédiées ou complétées" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Modèle de référence de commande d'achat" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Modèle requis pour générer le champ de référence de bon de commande" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Modifier les bons de commande terminés" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Autoriser la modification des bons de commande après avoir été expédiés ou complétés" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Activer les mots de passe oubliés" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Activer la fonction \"Mot de passe oublié\" sur les pages de connexion" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Activer les inscriptions" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Activer l'auto-inscription pour les utilisateurs sur les pages de connexion" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "Activer le SSO" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "Activer le SSO sur les pages de connexion" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "Activer l'inscription SSO" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Activer l'auto-inscription via SSO pour les utilisateurs sur les pages de connexion" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Email requis" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Exiger que l'utilisateur fournisse un mail lors de l'inscription" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "Saisie automatique des utilisateurs SSO" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Remplir automatiquement les détails de l'utilisateur à partir des données de compte SSO" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "Courriel en double" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mail" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Mot de passe deux fois" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Lors de l'inscription, demandez deux fois aux utilisateurs leur mot de passe" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Domaines autorisés" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Grouper sur inscription" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Forcer l'authentification multifacteurs" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Les utilisateurs doivent utiliser l'authentification multifacteurs." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Vérifier les plugins au démarrage" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Vérifier que tous les plugins sont installés au démarrage - activer dans les environnements conteneurs" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "Activer l'intégration d'URL" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Autoriser les plugins à ajouter des chemins URL" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Activer l'intégration de navigation" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Activer les plugins à s'intégrer dans la navigation" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "Activer l'intégration de plugins" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Activer l'intégration de plugin pour ajouter des apps" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Activer l'intégration du planning" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Autoriser les plugins à éxécuter des tâches planifiées" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Activer l'intégration des évènements" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Autoriser les plugins à répondre aux évènements internes" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Activer les codes projet" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Fonctionnalité d'inventaire" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Activer la fonctionnalité d'inventaire pour enregistrer les niveaux de stock et le calcul de la valeur du stock" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Période de l'inventaire automatique" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Nombre de jours entre l'enregistrement automatique des stocks (définir à zéro pour désactiver)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Les rapports d'inventaire seront supprimés après le nombre de jours spécifié" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Clé du paramètre (doit être unique - insensible à la casse)" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Afficher les composants suivis" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Afficher les composants suivis sur l'écran d'accueil" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Afficher les catégories suivies" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Afficher les catégories de pièces suivies sur la page d'accueil" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Afficher les dernières pièces" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Afficher les derniers composants sur la page d'accueil" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Afficher les listes de matériaux en attente de validation sur la page d'accueil" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Afficher les dernières modifications du stock" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Afficher les articles de stock récemment modifiés sur la page d'accueil" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Afficher le stock faible" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Afficher les articles en stock bas sur la page d'accueil" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Afficher le stock épuisé" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Afficher les stocks épuisés sur la page d'accueil" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Afficher le stock nécessaire" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Afficher les pièces en stock nécessaires pour les assemblages sur la page d'accueil" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Afficher le stock expiré" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Afficher les pièces en stock expirées sur la page d'accueil" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Afficher le stock périmé" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Afficher les articles de stock périmés sur la page d'accueil" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Afficher les constructions en attente" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Afficher les constructions en attente sur la page d'accueil" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Afficher les constructions en retard" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Afficher les constructions en retard sur la page d'accueil" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Afficher les commandes en suspens" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Afficher les commandes en suspens sur la page d'accueil" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Afficher les commandes en retard" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Afficher les commandes en retard sur la page d'accueil" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Afficher les envois en suspens" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Afficher les envois en suspens sur la page d'accueil" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Afficher les envois en retard" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Afficher les envois en retard sur la page d'accueil" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Afficher les nouvelles" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Afficher les nouvelles sur la page d'accueil" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Affichage du libellé en ligne" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "Afficher les étiquettes PDF dans le navigateur, au lieu de les télécharger en tant que fichier" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Imprimante d'étiquettes par défaut" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Configurer quelle imprimante d'étiquette doit être sélectionnée par défaut" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Affichage du rapport en ligne" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "Afficher les rapports PDF dans le navigateur, au lieu de les télécharger en tant que fichier" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Rechercher de pièces" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Afficher les pièces dans la fenêtre d'aperçu de la recherche" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Recherche du fournisseur de pièces" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Afficher les pièces du fournisseur dans la fenêtre de prévisualisation de la recherche" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Rechercher les pièces du fabricant" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Afficher les pièces du fabricant dans la fenêtre de prévisualisation de recherche" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Masquer les pièces inactives" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Exclure les pièces inactives de la fenêtre de prévisualisation de recherche" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Rechercher des catégories" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Afficher les catégories de pièces dans la fenêtre de prévisualisation de recherche" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Rechercher dans le stock" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Afficher les pièces en stock dans la fenêtre d'aperçu de la recherche" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Cacher les pièces indisponibles" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Exclure les articles en stock qui ne sont pas disponibles de la fenêtre de prévisualisation de recherche" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Chercher des Emplacements" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Afficher les emplacements dans la fenêtre d'aperçu de la recherche" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Rechercher les entreprises" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Afficher les entreprises dans la fenêtre de prévisualisation de recherche" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Rechercher les commandes de construction" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Afficher les commandes de construction dans la fenêtre de prévisualisation de recherche" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Rechercher des bons de commande" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Afficher les bons de commande dans la fenêtre de prévisualisation de recherche" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Exclure les bons de commande inactifs" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Exclure les commandes d’achat inactives de la fenêtre de prévisualisation de recherche" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Rechercher les bons de commande" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Afficher les bons de commande dans la fenêtre de prévisualisation de la recherche" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Exclure les bons de commande inactives" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Exclure les bons de commande inactifs de la fenêtre de prévisualisation de recherche" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Rechercher les commandes retournées" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Résultats de l'aperçu de la recherche" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "Nombre de résultats à afficher dans chaque section de la fenêtre de prévisualisation de recherche" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Recherche Regex" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Afficher la quantité dans les formulaires" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Afficher la quantité disponible dans certains formulaires" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "La touche Echap ferme les formulaires" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "Utilisez la touche Echap pour fermer les formulaires modaux" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Barre de navigation fixe" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "La position de la barre de navigation est fixée en haut de l'écran" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Format de date" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Format préféré pour l'affichage des dates" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Planification des pièces" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Afficher les informations de planification des pièces" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Inventaire des pièces" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Longueur de la chaîne dans les Tableau" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "Longueur maximale des chaînes affichées dans les tableaux" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Utilisateur" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Prix" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "Ce webhook (lien de rappel HTTP) est-il actif" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "Jeton" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Jeton d'accès" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Confidentiel" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "ID message" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Identifiant unique pour ce message" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Hôte" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Hôte à partir duquel ce message a été reçu" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Entête" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "En-tête de ce message" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Corps" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Corps de ce message" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "Endpoint à partir duquel ce message a été reçu" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "Le travail sur ce message est-il terminé ?" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "Id" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Titre" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Lien" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Publié" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Auteur" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Résumé" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Lu" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "Cette nouvelle a-t-elle été lue ?" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "Cette nouvelle a-t-elle été lue ?" msgid "Image" msgstr "Image" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Fichier image" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "Symbole" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "Symbole d'unité facultatif" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Définition" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "Définition de l'unité" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Pièce jointe" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Fichier manquant" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Lien externe manquant" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Sélectionnez un fichier à joindre" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Commentaire" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "Notes internes pour la livraison" msgid "Link to address information (external)" msgstr "Lien vers les informations de l'adresse (externe)" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Pièces du fabricant" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "Fabricant" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Sélectionner un fabricant" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Nom du paramètre" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Valeur" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Valeur du paramètre" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Unités" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Unités du paramètre" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Pièce fournisseur" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "La pièce du fabricant liée doit faire référence à la même pièce de base" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Fournisseur" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Sélectionner un fournisseur" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Unité de gestion des stocks des fournisseurs" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Sélectionner un fabricant" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "Lien de la pièce du fournisseur externe" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "Description de la pièce du fournisseur" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "coût de base" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Frais minimums (par exemple frais de stock)" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Conditionnement" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Conditionnement de l'article" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Nombre de paquet" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "plusieurs" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Commande multiple" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "Quantité disponible auprès du fournisseur" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Disponibilité mise à jour" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "Date de dernière mise à jour des données de disponibilité" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "Devise par défaut utilisée pour ce fournisseur" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "En Stock" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "Télécharger l'image depuis l'URL" msgid "Delete image" msgstr "Supprimer image" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Client" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Téléphone" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Supprimer" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "Supprimer la pièce de fabricant" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Pièces Internes" @@ -4638,7 +4734,7 @@ msgstr "Aucune information sur le fabricant disponible" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Paramètres" msgid "New Parameter" msgstr "Nouveau paramètre" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "Supprimer la pièce du fournisseur" msgid "No supplier information available" msgstr "Aucune information de fournisseur disponible" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "Créer un nouvel article de stock" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Nouvel article de stock" @@ -4762,29 +4862,33 @@ msgstr "Information sur les prix" msgid "Add Price Break" msgstr "Ajouter un prix de rupture" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Éléments en stock" @@ -4822,83 +4926,91 @@ msgstr "Placé" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "Données" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "Erreurs" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Valide" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Inconnu" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "Impression" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "Aucun média" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "Déconnecté" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "Imprimante Etiquette" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "Impression directe des étiquettes pour divers articles." -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "Emplacement Imprimante" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "Porter de l'imprimante sur un emplacement spécifique" @@ -5075,7 +5203,7 @@ msgstr "Type de configuration" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Prix Total" @@ -5096,9 +5224,9 @@ msgstr "Possède un Tarif" msgid "No matching purchase order found" msgstr "Aucun bon de commande correspondant n'a été trouvé" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Commande" @@ -5111,26 +5239,26 @@ msgstr "Commande Complétée" msgid "Order Pending" msgstr "Commande En Attente" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Commande d’achat" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "Retour de commande" @@ -5158,7 +5286,7 @@ msgstr "Description de la commande (facultatif)" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Lien vers une page externe" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "Adresse de l'entreprise pour cette commande" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Référence de la commande" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Statut de la commande d'achat" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Société de laquelle les articles sont commandés" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Référence du fournisseur" @@ -5207,15 +5335,15 @@ msgstr "Code de référence de la commande fournisseur" msgid "received by" msgstr "reçu par" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Date d'émission" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Date d'émission de la commande" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Date à laquelle la commande a été complété" @@ -5223,501 +5351,501 @@ msgstr "Date à laquelle la commande a été complété" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "La quantité doit être un nombre positif" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Société à laquelle les articles sont vendus" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Référence client " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Nom de l’expédition" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "expédié par" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "La commande ne peut pas être terminée car il y a des envois incomplets" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Nombre d'élement" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Contexte" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Prix unitaire" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "supprimé" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Pièce fournisseur" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Reçu" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Nombre d'éléments reçus" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Prix d'achat" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Prix d'achat unitaire" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Où l'Acheteur veut-il stocker cet article ?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "La pièce virtuelle ne peut pas être affectée à une commande" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "Seules les pièces vendues peuvent être attribuées à une commande" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Prix de vente" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Prix de vente unitaire" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Expédié" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Quantité expédiée" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Date d'expédition" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Date de Livraison" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Vérifié par" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Utilisateur qui a vérifié cet envoi" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Envoi" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Numéro d'expédition" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "N° de suivi" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Information de suivi des colis" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "N° de facture" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Numéro de référence de la facture associée" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Le colis a déjà été envoyé" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "L'expédition n'a pas d'articles en stock alloués" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "L'article de stock n'a pas été assigné" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Impossible d'allouer le stock à une ligne sans pièce" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "La quantité d'allocation ne peut pas excéder la quantité en stock" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Ligne" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Article" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "Statut du retour de commande" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "La commande ne peut pas être annulée" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "La commande n'est pas ouverte" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Devise du prix d'achat" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Entrez les numéros de série pour les articles de stock entrants" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Code-barres" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Le code-barres est déjà utilisé" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Une quantité entière doit être fournie pour les pièces tracables" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Devise du prix de vente" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Entrez les numéros de série à allouer" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "Aucune correspondance trouvée pour les numéros de série suivants" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "Les numéros de série suivants sont déjà alloués" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "Dupliquer la sélection" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Supprimer la ligne" @@ -6047,8 +6175,8 @@ msgstr "Référence client" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Expéditions en attente" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Actions" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "ID de composant" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Description pièce" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Révision" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Mots-clés" @@ -6178,7 +6298,7 @@ msgstr "Image pièce" msgid "Category ID" msgstr "ID catégorie" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Nom catégorie" @@ -6191,11 +6311,11 @@ msgstr "ID Emplacement par défaut" msgid "Default Supplier ID" msgstr "ID Fournisseur par défaut" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Variante de" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Stock Minimum" @@ -6203,19 +6323,19 @@ msgstr "Stock Minimum" msgid "Used In" msgstr "Utilisé pour" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "Construction" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "Coût minimal" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "Coût maximal" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "Chemin catégorie" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Pièces" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "Prix Minimum" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Catégorie" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "Utilise" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Emplacement par défaut" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Stock total" @@ -6375,753 +6504,784 @@ msgstr "Stock total" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Catégorie de composant" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Catégories de composants" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "Structurel" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Mots-clés par défaut" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Nom de l'article" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Catégorie de la pièce" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Est-ce que cette pièce est active ?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Création Utilisateur" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "Propriétaire responsable de cette pièce" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Ventes multiples" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "Coût minimum de vente" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "Notes additionnelles" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Nom de test" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Activé" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Requis" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Valeur requise" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Valeur par Défaut" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Surplus" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "Validée" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Devise d'achat de l'item" @@ -7155,303 +7315,312 @@ msgstr "Devise d'achat de l'item" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Copier l'image" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Copier les paramètres" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "Prise d'inventaire" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Dernier numéro de série" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "Rechercher un numéro de série" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "Modifier" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Correspondance trouvée pour les données du code-barres" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "Aucun objet valide n'a été fourni au modèle" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Numéro de série" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Résultat" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Numéro de série" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Propriétaire" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Sélectionner un propriétaire" @@ -9257,7 +9409,7 @@ msgstr "Sélectionner un propriétaire" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "La quantité doit être de 1 pour un article avec un numéro de série" msgid "Serial number cannot be set if quantity greater than 1" msgstr "Le numéro de série ne peut pas être défini si la quantité est supérieure à 1" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "Numéro de série pour cet article" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "Les numéros de série doivent être une liste de nombres entiers" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "La quantité ne correspond pas au nombre de numéros de série" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Les numéros de série existent déjà" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "Entrez le nombre d'articles en stock à sérialiser" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "Entrez les numéros de série pour les nouveaux articles" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "Les numéros de série ne peuvent pas être assignés à cette pièce" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "En quarantaine" msgid "Legacy stock tracking entry" msgstr "Ancienne entrée de suivi de stock" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Article en stock créé" @@ -9880,7 +10027,7 @@ msgstr "Séparer de l'élément parent" msgid "Split child item" msgstr "Fractionner l'élément enfant" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Articles de stock fusionnés" @@ -9900,7 +10047,7 @@ msgstr "Sortie de l'ordre de construction terminée" msgid "Build order output rejected" msgstr "La sortie de l'ordre de construction a été refusée" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Consommé par ordre de construction" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Assemblage" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "Accéder au numéro de série suivant" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Supprimer" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Confirmer" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Quantité requise" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Scanner le code-barres" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "Dernier numéro de série" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Ajouter" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po index f55b11cd60..b6e8ccd92d 100644 --- a/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "הזן תאריך סיום" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 +msgid "Danish" +msgstr "" + +#: InvenTree/locales.py:22 msgid "German" msgstr "גרמנית" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "יוונית" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "אנגלית" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "ספרדית" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "ספרדית (מקסיקנית)" -#: InvenTree/locales.py:26 -msgid "Farsi / Persian" -msgstr "" - #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 +msgid "Farsi / Persian" +msgstr "" + +#: InvenTree/locales.py:29 +msgid "Finnish" +msgstr "" + +#: InvenTree/locales.py:30 msgid "French" msgstr "צרפתית" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "עברית" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "איטלקית" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "יפנית" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "קוריאנית" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "הולנדית" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "נורווגית" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "פולנית" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "רוסית" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "שוודית" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "תאילנדית" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "טורקית" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "ווייטנאמית" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "בחירה שגויה" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "בחירה שגויה" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "שם" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "שם" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "תיאור" @@ -464,8 +475,8 @@ msgstr "תיאור" msgid "Description (optional)" msgstr "תיאור (לא חובה)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "המספר חייב להיות תקין" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "מידע אודות המערכת" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "מקט" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "מקור הבנייה" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "רכיב" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "בחר רכיב לבנייה" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "כמות בניה" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "קישור חיצוני" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "כמות" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "מספרים סידוריים" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "ייצור" msgid "Cancelled" msgstr "מבוטל" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "משתמש" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "קישור" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "קובץ מצורף" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "קובץ חסר" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "חסר קישור חיצוני" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "בחר קובץ לצירוף" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "הערה" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "מוקם" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "נשלח" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "אשר" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po index af7d697e51..7ddfa059c2 100644 --- a/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/hi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:57\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Hindi\n" "Language: hi_IN\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "तारीख दर्ज करें" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po index 9ac7255c8c..5b82094db1 100644 --- a/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -56,26 +56,29 @@ msgstr "A hiba részleteit megtalálod az admin panelen" msgid "Enter date" msgstr "Dátum megadása" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Megjegyzések" @@ -132,7 +135,7 @@ msgstr "A megadott email domain nincs jóváhagyva." msgid "Registration is disabled." msgstr "Regisztráció le van tiltva." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Nem megfelelő mennyiség" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "A megadott URL nem egy érvényes kép fájl" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bolgár" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Cseh" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Dán" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Német" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Görög" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Angol" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spanyol" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spanyol (Mexikói)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Fárszi/Perzsa" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finn" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Francia" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Héber" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hindi" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Magyar" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Olasz" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japán" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Koreai" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Litván" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Holland" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norvég" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Lengyel" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugál" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugál (Brazíliai)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "Román" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Orosz" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Szlovák" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Szlovén" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Szerb" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Svéd" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Tháj" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Török" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Ukrán" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnámi" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Kínai (egyszerűsített)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Kínai (Hagyományos)" @@ -403,9 +414,9 @@ msgstr "Duplikált nevek nem lehetnek ugyanazon szülő alatt" msgid "Invalid choice" msgstr "Érvénytelen választás" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Érvénytelen választás" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Név" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Név" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Leírás" @@ -464,8 +475,8 @@ msgstr "Leírás" msgid "Description (optional)" msgstr "Leírás (opcionális)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Elérési út" @@ -501,12 +512,12 @@ msgstr "Kiszolgálóhiba" msgid "An error has been logged by the server." msgstr "A kiszolgáló egy hibaüzenetet rögzített." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Érvényes számnak kell lennie" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "Rendszergazda" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Üdvözlet az InvenTree-ben" msgid "Invalid value" msgstr "Érvénytelen érték" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Adat fájl" @@ -651,7 +662,7 @@ msgstr "A távoli kép URL-je" msgid "Downloading images from remote URL is not enabled" msgstr "Képek letöltése távoli URL-ről nem engedélyezett" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Háttér folyamat ellenőrzés sikertelen" @@ -711,48 +722,48 @@ msgstr "Rendszerinformáció" msgid "About InvenTree" msgstr "Verzió információk" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "A gyártást be kell fejezni a törlés előtt" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Fogyóeszköz" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Opcionális" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Követett" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Lefoglalva" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Elérhető" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Gyártási utasítás" @@ -778,72 +789,72 @@ msgstr "Gyártási utasítás" msgid "Build Orders" msgstr "Gyártási utasítások" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Hibás választás a szülő gyártásra" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "Meg kell adni felelős felhasználót vagy csoportot" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Gyártási rendelés alkatrész nem változtatható" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Gyártási utasítás azonosító" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Azonosító" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Gyártás rövid leírása (opcionális)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Szülő gyártás" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Alkatrész" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Válassz alkatrészt a gyártáshoz" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Vevői rendelés azonosító" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Vevői rendelés amihez ez a gyártás hozzá van rendelve" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Forrás hely" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Válassz helyet ahonnan készletet vegyünk el ehhez a gyártáshoz (hagyd üresen ha bárhonnan)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Cél hely" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Válassz helyet ahol a kész tételek tárolva lesznek" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Gyártási mennyiség" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Gyártandó készlet tételek száma" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Kész tételek" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Elkészült készlet tételek száma" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Gyártási állapot" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Gyártás státusz kód" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Batch kód" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Batch kód a gyártás kimenetéhez" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Létrehozás dátuma" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Befejezés cél dátuma" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Cél dátum a gyártás befejezéséhez. Ez után késettnek számít majd." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Befejezés dátuma" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "elkészítette" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Indította" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Felhasználó aki ezt a gyártási utasítást kiállította" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Felelős" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Felhasználó vagy csoport aki felelős ezért a gyártásért" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Külső link" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Link külső URL-re" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Priorítás" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Gyártási utasítás priorítása" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Gyártási utasítás priorítása" msgid "Project Code" msgstr "Projektszám" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Projekt kód a gyártáshoz" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "A gyártási foglalások teljesítése háttérfeladat elvégzése nem sikerült" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "A {build} gyártási utasítás elkészült" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Gyártási utasítás elkészült" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Nincs gyártási kimenet megadva" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Gyártási kimenet már kész" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Gyártási kimenet nem egyezik a gyártási utasítással" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Mennyiségnek nullánál többnek kell lennie" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "A mennyiség nem lehet több mint a gyártási mennyiség" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "A {serial} gyártási kimenet nem felelt meg az összes kötelező teszten" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Gyártás objektum" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,462 +1120,521 @@ msgstr "Gyártás objektum" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Mennyiség" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Gyártáshoz szükséges mennyiség" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Gyártási tételnek meg kell adnia a gyártási kimenetet, mivel a fő darab egyedi követésre kötelezett" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "A lefoglalt mennyiség ({q}) nem lépheti túl a szabad készletet ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Készlet túlfoglalva" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Lefoglalt mennyiségnek nullánál többnek kell lennie" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "A készlet tétel nem egyezik az alkatrészjegyzékkel" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Készlet tétel" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Forrás készlet tétel" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Készlet mennyiség amit foglaljunk a gyártáshoz" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Beépítés ebbe" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Cél készlet tétel" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Alkatrész neve" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Gyártás kimenet" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Gyártási kimenet nem egyezik a szülő gyártással" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Kimeneti alkatrész nem egyezik a gyártási utasításban lévő alkatrésszel" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Ez a gyártási kimenet már elkészült" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Ez a gyártási kimenet nincs teljesen lefoglalva" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Add meg a mennyiséget a gyártás kimenetéhez" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Egész számú mennyiség szükséges az egyedi követésre kötelezett alkatrészeknél" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Egész számú mennyiség szükséges, mivel az alkatrészjegyzék egyedi követésre kötelezett alkatrészeket tartalmaz" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Sorozatszámok" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Add meg a sorozatszámokat a gyártás kimenetéhez" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Hely" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "Legyártott készlet helye" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Sorozatszámok automatikus hozzárendelése" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Szükséges tételek automatikus hozzárendelése a megfelelő sorozatszámokkal" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "Egyedi követésre jelölt alkatrészeknél kötelező sorozatszámot megadni" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "A következő sorozatszámok már léteznek vagy nem megfelelőek" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "A gyártási kimenetek listáját meg kell adni" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Selejtezet gyártási kimenetek helye" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Foglalások törlése" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Selejtezett kimenetek foglalásainak felszabadítása" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Selejtezés oka" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "A kész gyártási kimenetek helye" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Állapot" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Hiányos foglalás elfogadása" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Kimenetek befejezése akkor is ha a készlet nem\n" "lett teljesen lefoglalva" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "Lefoglalt készlet felhasználása" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "Az összes ehhez a gyártáshoz lefoglalt készlet felhasználása" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Befejezetlen kimenetek törlése" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "A nem befejezett gyártási kimenetek törlése" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Nem engedélyezett" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Gyártásban fel lett használva" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Foglalás felszabadítása a készre jelentés előtt" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Túlfoglalt készlet" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Hogyan kezeljük az gyártáshoz rendelt egyéb készletet" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Pár készlet tétel túl lett foglalva" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Kiosztatlanok elfogadása" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Fogadd el hogy a készlet tételek nincsenek teljesen lefoglalva ehhez a gyártási utastáshoz" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "A szükséges készlet nem lett teljesen lefoglalva" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Befejezetlenek elfogadása" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Fogadd el hogy a szükséges számú gyártási kimenet nem lett elérve" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Szükséges gyártási mennyiség nem lett elérve" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Gyártás sor" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Gyártás kimenet" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "A gyártási kimenetnek ugyanarra a gyártásra kell mutatnia" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Gyártás sor tétel" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part ugyanarra az alkatrészre kell mutasson mint a gyártási utasítás" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "A tételnek kell legyen készlete" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Rendelkezésre álló mennyiség ({q}) túllépve" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Gyártási kimenetet meg kell adni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Gyártási kimenetet nem lehet megadni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "A lefoglalandó tételeket meg kell adni" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Készlet hely ahonnan az alkatrészek származnak (hagyd üresen ha bárhonnan)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Hely kizárása" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Készlet tételek kizárása erről a kiválasztott helyről" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Felcserélhető készlet" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "A különböző helyeken lévő készlet egyenrangúan felhasználható" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Készlet helyettesítés" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Helyettesítő alkatrészek foglalásának engedélyezése" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Opcionális tételek" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Opcionális tételek lefoglalása a gyártáshoz" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "Nem sikerült az automatikus lefoglalás feladatot elindítani" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Gyártói cikkszám" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "Hely neve" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "Alkatrész ID" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "Alkatrész IPN" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Sorozatszám" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "Lefoglalt mennyiség" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "Elérhető mennyiség" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Alkatrész leírása" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Követésre kötelezett" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Változatok" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "Lefoglalt készlet" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "Rendelve" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "Gyártásban" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Elérhető készlet" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "Külső raktárkészlet" @@ -1582,7 +1653,7 @@ msgstr "Folyamatban" msgid "Cancelled" msgstr "Törölve" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1638,8 +1709,8 @@ msgstr "QR kód megjelenítése" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Vonalkód leválasztása" @@ -1716,14 +1787,14 @@ msgstr "Még nincs lefoglalva a szükséges készlet" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1754,8 +1825,8 @@ msgid "Completed Outputs" msgstr "Befejezett kimenetek" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1765,7 +1836,7 @@ msgstr "Befejezett kimenetek" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Vevői rendelés" @@ -1777,7 +1848,7 @@ msgid "Issued By" msgstr "Kiállította" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Prioritás" @@ -1805,8 +1876,8 @@ msgstr "Készlet forrás" msgid "Stock can be taken from any available location." msgstr "Készlet bármely rendelkezésre álló helyről felhasználható." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Cél" @@ -1820,11 +1891,11 @@ msgstr "Lefoglalt alkatrészek" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1834,7 +1905,7 @@ msgstr "Köteg" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Létrehozva" @@ -1852,13 +1923,13 @@ msgstr "Kész" msgid "Build not complete" msgstr "Gyártás nincs kész" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Alárendelt gyártások" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Készlet foglalása gyártáshoz" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1880,7 +1951,7 @@ msgstr "Automata foglalás" msgid "Manually allocate stock to build" msgstr "Manuális készlet foglalás a gyártáshoz" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Készlet foglalása" @@ -1909,15 +1980,15 @@ msgstr "Új gyártási kimenet létrehozása" msgid "New Build Output" msgstr "Új gyártási kimenet" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Felhasznált készlet" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Befejezett gyártási kimenetek" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1933,15 +2004,15 @@ msgstr "Befejezett gyártási kimenetek" msgid "Attachments" msgstr "Mellékletek" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Gyártási megjegyzések" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "Lefoglalás kész" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "Minden sor rendben lefoglalva" @@ -1953,6 +2024,16 @@ msgstr "Új gyártási utasítás" msgid "Build Order Details" msgstr "Gyártási utasítás részletei" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Sortételek" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Befejezetlen kimenetek" @@ -2157,8 +2238,8 @@ msgstr "Milyen gyakran frissítse az árfolyamokat (nulla a kikapcsoláshoz)" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "nap" @@ -2307,70 +2388,78 @@ msgid "Enable revision field for Part" msgstr "Alkatrész változat vagy verziószám tulajdonság használata" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 +msgid "Allow Deletion from Assembly" +msgstr "" + +#: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 msgid "IPN Regex" msgstr "IPN reguláris kifejezés" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Reguláris kifejezés ami illeszkedik az alkatrész IPN-re" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Többször is előforduló IPN engedélyezése" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Azonos IPN használható legyen több alkatrészre is" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "IPN szerkesztésének engedélyezése" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "IPN megváltoztatásánsak engedélyezése az alkatrész szerkesztése közben" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Alkatrészjegyzék adatok másolása" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Alkatrész másoláskor az alkatrészjegyzék adatokat is másoljuk alapból" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Alkatrész paraméterek másolása" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Alkatrész másoláskor a paramétereket is másoljuk alapból" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Alkatrész teszt adatok másolása" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Alkatrész másoláskor a tesztek adatait is másoljuk alapból" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Kategória paraméter sablonok másolása" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Kategória paraméter sablonok másolása alkatrész létrehozásakor" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2378,1291 +2467,1291 @@ msgstr "Kategória paraméter sablonok másolása alkatrész létrehozásakor" msgid "Template" msgstr "Sablon" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Alkatrészek alapból sablon alkatrészek legyenek" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Gyártmány" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Alkatrészeket alapból lehessen gyártani másik alkatrészekből" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Összetevő" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Alkatrészek alapból használhatók összetevőként más alkatrészekhez" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Beszerezhető" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Alkatrészek alapból beszerezhetők legyenek" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Értékesíthető" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Alkatrészek alapból eladhatók legyenek" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Alkatrészek alapból követésre kötelezettek legyenek" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Virtuális" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Alkatrészek alapból virtuálisak legyenek" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Importálás megjelenítése a nézetekben" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Import segéd megjelenítése néhány alkatrész nézetben" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Kapcsolódó alkatrészek megjelenítése" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Alkatrész kapcsolódó alkatrészeinek megjelenítése" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Kezdeti készlet adatok" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Kezdeti készlet létrehozása új alkatrész felvételekor" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Kezdeti beszállítói adatok" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Kezdeti beszállítói adatok létrehozása új alkatrész felvételekor" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Alkatrész név megjelenítés formátuma" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Formátum az alkatrész név megjelenítéséhez" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Alkatrész kategória alapértelmezett ikon" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Alkatrész kategória alapértelmezett ikon (üres ha nincs)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Csak választható mértékegységek" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "A megadott mértékegység csak a beállított lehetőségekből legyen elfogadva" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Áraknál használt tizedesjegyek min. száma" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Tizedejegyek minimális száma az árak megjelenítésekor" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "Áraknál használt tizedesjegyek max. száma" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Tizedejegyek maximális száma az árak megjelenítésekor" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Beszállítói árazás használata" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Beszállítói ársávok megjelenítése az általános árkalkulációkban" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Beszerzési előzmények felülbírálása" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Beszerzési árelőzmények felülírják a beszállítói ársávokat" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Készlet tétel ár használata" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "A kézzel bevitt készlet tétel árak használata az árszámításokhoz" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Készlet tétel ár kora" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Az ennyi napnál régebbi készlet tételek kizárása az árszámításból" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Alkatrészváltozat árak használata" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Alkatrészváltozat árak megjelenítése az általános árkalkulációkban" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Csak az aktív változatokat" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Csak az aktív alkatrészváltozatok használata az árazásban" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Árazás újraszámítás gyakoriság" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Árak automatikus frissítése ennyi nap után" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Belső árak" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Alkatrészekhez belső ár engedélyezése" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Belső ár felülbírálása" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Ha elérhetőek az árkalkulációkban a belső árak lesznek alapul véve" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Címke nyomtatás engedélyezése" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Címke nyomtatás engedélyezése a web felületről" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Címke kép DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Képek felbontása amik átadásra kerülnek címkenyomtató pluginoknak" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Riportok engedélyezése" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Riportok előállításának engedélyezése" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Debug mód" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Riportok előállítása HTML formátumban (hibakereséshez)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "Jelentési hibák naplózása" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "Jelentések generálása közben jelentkező hibák naplózása" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Lapméret" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Alapértelmezett lapméret a PDF riportokhoz" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Teszt riportok engedélyezése" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Teszt riportok előállításának engedélyezése" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Teszt riportok hozzáadása" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Teszt riport nyomtatáskor egy másolat hozzáadása a készlet tételhez" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Globálisan egyedi sorozatszámok" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "A sorozatszámoknak egyedinek kell lennie a teljes készletre vonatkozóan" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Sorozatszámok automatikus kitöltése" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Sorozatszámok automatikus kitöltése a formokon" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Kimerült készlet törlése" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "Alapértelmezett művelet mikor a készlet tétel elfogy" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Batch kód sablon" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Sablon a készlet tételekhez alapértelmezett batch kódok előállításához" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Készlet lejárata" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Készlet lejárat kezelésének engedélyezése" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Lejárt készlet értékesítése" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Lejárt készlet értékesítésének engedélyezése" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Álló készlet ideje" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Napok száma amennyivel a lejárat előtt a készlet tételeket állottnak vesszük" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Lejárt készlet gyártása" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Gyártás engedélyezése lejárt készletből" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Készlet tulajdonosok kezelése" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Tulajdonosok kezelésének engedélyezése a készlet helyekre és tételekre" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Hely alapértelmezett ikon" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Hely alapértelmezett ikon (üres ha nincs)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Beépített készlet megjelenítése" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "Beépített készlet tételek megjelenítése a készlet táblákban" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "Tételek telepítésekor a darabjegyzék ellenőrzése" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "A beépített tételeknek a szülő elem darabjegyzékében szerepelniük kell" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Gyártási utasítás azonosító minta" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Szükséges minta a gyártási utasítás azonosító mező előállításához" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "Felelős tulajdonos szükséges" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "Minden rendeléshez felelőst kell rendelni" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "Blokkolás a tesztek sikeres végrehajtásáig" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Nem lehet gyártási tételt befejezni amíg valamennyi kötelező teszt sikeres nem lett" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Visszavétel engedélyezése" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Visszavételek engedélyezése a felületen" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Visszavétel azonosító minta" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "Szükséges minta a visszavétel azonosító mező előállításához" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Befejezett visszavétel szerkesztése" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Visszavétel szerkesztésének engedélyezése befejezés után" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Vevői rendelés azonosító minta" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Szükséges minta a vevői rendelés azonosító mező előállításához" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Vevői rendeléshez alapértelmezett szállítmány" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Szállítmány automatikus létrehozása az új vevő rendelésekhez" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Befejezett vevői rendelés szerkesztése" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Vevői rendelések szerkesztésének engedélyezése szállítás vagy befejezés után" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Beszerzési rendelés azonosító minta" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Szükséges minta a beszerzési rendelés azonosító mező előállításához" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Befejezett beszerzési rendelés szerkesztése" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Beszérzési rendelések szerkesztésének engedélyezése kiküldés vagy befejezés után" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "Beszerzési rendelések automatikus befejezése" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "A beszerzési rendelés automatikus befejezése ha minden sortétel beérkezett" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Elfelejtett jelszó engedélyezése" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Elfelejtett jelszó funkció engedélyezése a bejentkező oldalon" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Regisztráció engedélyezése" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése a bejelentkező oldalon" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "SSO engedélyezése" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "SSO engedélyezése a bejelentkező oldalon" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "SSO regisztráció engedélyezése" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése SSO-n keresztül a bejelentkező oldalon" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Email szükséges" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Kötelező email megadás regisztrációkor" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "SSO felhasználók automatikus kitöltése" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Felhasználó adatainak automatikus kitöltése az SSO fiókadatokból" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "Email kétszer" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Regisztráláskor kétszer kérdezze a felhasználó email címét" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Jelszó kétszer" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Regisztráláskor kétszer kérdezze a felhasználó jelszavát" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Engedélyezett domainek" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Feliratkozás korlátozása megadott domain-ekre (vesszővel elválasztva, @-al kezdve)" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Csoport regisztráláskor" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Többfaktoros hitelesítés kényszerítése" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "A felhasználóknak többfaktoros hitelesítést kell használniuk." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Pluginok ellenőrzése indításkor" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Ellenőrizze induláskor hogy minden plugin telepítve van - engedélyezd konténer környezetben (docker)" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "Plugin frissítések ellenőrzése" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "Frissítések periódikus ellenőrzésének engedélyezése a telepített pluginokra" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "URL integráció engedélyezése" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "URL útvonalalak hozzáadásának engedélyezése a pluginok számára" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Navigációs integráció engedélyezése" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Navigációs integráció engedélyezése a pluginok számára" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "App integráció engedélyezése" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "App hozzáadásának engedélyezése a pluginok számára" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Ütemezés integráció engedélyezése" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Háttérben futó feladatok hozzáadásának engedélyezése a pluginok számára" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Esemény integráció engedélyezése" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Belső eseményekre reagálás engedélyezése a pluginok számára" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Projektszámok engedélyezése" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "Projektszámok használatának engedélyezése a projektek követéséhez" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Leltár funkció" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Leltár funkció engedélyezése a készlet mennyiség és érték számításhoz" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "Külső helyek nélkül" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Külső helyek figyelmen kívül hagyása a leltár számításoknál" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Automatikus leltár időpontja" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Hány naponta történjen automatikus leltár (nulla egyenlő tiltva)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "Riport törlési gyakoriság" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Régi leltár riportok törlése hány naponta történjen" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "Felhasználók teljes nevének megjelenítése" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "Felhasználói név helyett a felhasználók teljes neve jelenik meg" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "Teszt állomás adatok engedélyezése" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "Tesztállomás adatok gyűjtésének teszt eredménybe gyűjtésének engedélyezése" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Beállítások kulcs (egyedinek kell lennie, nem kis- nagybetű érzékeny" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Inaktív alkatrészek elrejtése" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "Nem aktív alkatrészek elrejtése a kezdőlapon" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Értesítésre beállított alkatrészek megjelenítése" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Alkatrész értesítések megjelenítése a főoldalon" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Értesítésre beállított kategóriák megjelenítése" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Alkatrész kategória értesítések megjelenítése a főoldalon" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Legújabb alkatrészek megjelenítése" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Legújabb alkatrészek megjelenítése a főoldalon" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "Hibás alkatrészjegyzékek megjelenítése" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Jóváhagyásra váró alkatrészjegyzékek megjelenítése a főoldalon" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Legfrissebb készlet változások megjelenítése" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Legutóbb megváltozott alkatrészek megjelenítése a főoldalon" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Alacsony készlet megjelenítése" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Alacsony készletek megjelenítése a főoldalon" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Kimerült készlet megjelenítése" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Kimerült készletek megjelenítése a főoldalon" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Gyártáshoz szükséges készlet megjelenítése" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Gyártáshoz szükséges készletek megjelenítése a főoldalon" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Lejárt készlet megjelenítése" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Lejárt készletek megjelenítése a főoldalon" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Állott készlet megjelenítése" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Álló készletek megjelenítése a főoldalon" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Függő gyártások megjelenítése" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Folyamatban lévő gyártások megjelenítése a főoldalon" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Késésben lévő gyártások megjelenítése" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Késésben lévő gyártások megjelenítése a főoldalon" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Kintlévő beszerzési rendelések megjelenítése" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Kintlévő beszerzési rendelések megjelenítése a főoldalon" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Késésben lévő megrendelések megjelenítése" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Késésben lévő megrendelések megjelenítése a főoldalon" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Függő vevői rendelések megjelenítése" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Függő vevői rendelések megjelenítése a főoldalon" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Késésben lévő vevői rendelések megjelenítése" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Késésben lévő vevői rendelések megjelenítése a főoldalon" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "Függő vevői szállítmányok megjelenítése" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "Folyamatban lévő vevői szállítmányok megjelenítése a főoldalon" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Hírek megjelenítése" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Hírek megjelenítése a főoldalon" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Beágyazott címke megjelenítés" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "PDF címkék megjelenítése a böngészőben letöltés helyett" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Alapértelmezett címkenyomtató" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Melyik címkenyomtató legyen az alapértelmezett" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Beágyazott riport megjelenítés" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "PDF riport megjelenítése a böngészőben letöltés helyett" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Alkatrészek keresése" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Alkatrészek megjelenítése a keresési előnézetben" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Beszállítói alkatrészek keresése" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Beszállítói alkatrészek megjelenítése a keresési előnézetben" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Gyártói alkatrészek keresése" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Gyártói alkatrészek megjelenítése a keresési előnézetben" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Inaktív alkatrészek elrejtése" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Inaktív alkatrészek kihagyása a keresési előnézet találataiból" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Kategóriák keresése" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Alkatrész kategóriák megjelenítése a keresési előnézetben" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Készlet keresése" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Készlet tételek megjelenítése a keresési előnézetben" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Nem elérhető készlet tételek elrejtése" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Nem elérhető készlet kihagyása a keresési előnézet találataiból" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Helyek keresése" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Készlet helyek megjelenítése a keresési előnézetben" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Cégek keresése" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Cégek megjelenítése a keresési előnézetben" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Gyártási utasítások keresése" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Gyártási utasítások megjelenítése a keresés előnézet ablakban" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Beszerzési rendelések keresése" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Beszerzési rendelések megjelenítése a keresési előnézetben" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Inaktív beszerzési rendelések kihagyása" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Inaktív beszerzési rendelések kihagyása a keresési előnézet találataiból" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Vevői rendelések keresése" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Vevői rendelések megjelenítése a keresési előnézetben" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Inaktív vevői rendelések kihagyása" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Inaktív vevői rendelések kihagyása a keresési előnézet találataiból" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Visszavétel keresése" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "Visszavételek megjelenítése a keresés előnézet ablakban" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "Inaktív visszavételek kihagyása" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "Inaktív visszavételek kihagyása a keresési előnézet találataiból" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Keresési előnézet eredményei" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "A keresési előnézetben megjelenítendő eredmények száma szekciónként" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Regex keresés" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "Reguláris kifejezések engedélyezése a keresésekben" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "Teljes szó keresés" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "A keresések csak teljes szóra egyező találatokat adjanak" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Mennyiség megjelenítése a formokon" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Rendelkezésre álló alkatrész mennyiség megjelenítése néhány formon" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "ESC billentyű zárja be a formot" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "ESC billentyű használata a modális formok bezárásához" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Rögzített menüsor" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "A menü pozíciója mindig rögzítve a lap tetején" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Dátum formátum" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Preferált dátum formátum a dátumok kijelzésekor" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Alkatrész ütemezés" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Alkatrész ütemezési információk megjelenítése" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Alkatrész leltár" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Alkatrész leltár információk megjelenítése (ha a leltár funkció engedélyezett)" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Táblázati szöveg hossz" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "Maximális szöveg hossz ami megjelenhet a táblázatokban" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "Hibariportok fogadása" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "Értesítések fogadása a rendszerhibákról" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "Utoljára használt nyomtató gépek" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "Az utoljára használt nyomtató tárolása a felhasználóhoz" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Felhasználó" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "Ársáv mennyiség" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Ár" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "Egységár egy meghatározott mennyiség esetén" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Végpont" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "Végpont ahol ez a webhook érkezik" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "Webhook neve" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "Aktív-e ez a webhook" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "Token" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Token a hozzáféréshez" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Titok" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Megosztott titok a HMAC-hoz" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "Üzenet azonosító" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Egyedi azonosító ehhez az üzenethez" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Kiszolgáló" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Kiszolgáló ahonnan ez az üzenet érkezett" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Fejléc" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Üzenet fejléce" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Törzs" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Üzenet törzse" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "Végpont amin ez az üzenet érkezett" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Dolgozott rajta" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "Befejeződött a munka ezzel az üzenettel?" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "Azonosító" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Cím" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Link" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Közzétéve" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Szerző" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Összefoglaló" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Elolvasva" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "Elolvasva?" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3672,94 +3761,94 @@ msgstr "Elolvasva?" msgid "Image" msgstr "Kép" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Képfájl" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "A mértékegységnek valós azonosítónak kell lennie" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "Egység neve" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "Szimbólum" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "Opcionális mértékegység szimbólum" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Definíció" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "Mértékegység definíció" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Melléklet" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Hiányzó fájl" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Hiányzó külső link" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Válaszd ki a mellekelni kívánt fájlt" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Megjegyzés" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "Fájl mérete" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "Fájlméret bájtban" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4140,26 +4229,26 @@ msgstr "Szállítási megjegyzések belső használatra" msgid "Link to address information (external)" msgstr "Link a címinformációkhoz (külső)" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Gyártói alkatrész" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Kiindulási alkatrész" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Válassz alkatrészt" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4169,187 +4258,194 @@ msgstr "Válassz alkatrészt" msgid "Manufacturer" msgstr "Gyártó" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Gyártó kiválasztása" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "MPN (Gyártói cikkszám)" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "URL link a gyártói alkatrészhez" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "Gyártói alkatrész leírása" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Paraméter neve" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Érték" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Paraméter értéke" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Mértékegység" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Paraméter mértékegység" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Beszállítói alkatrész" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "A csomagolási egységnek kompatibilisnek kell lennie az alkatrész mértékegységgel" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "Csomagolási mennyiségnek nullánál többnek kell lennie" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészre kell hivatkoznia" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Beszállító" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Beszállító kiválasztása" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Beszállítói cikkszám" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "Ez a szállítói termék aktív?" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Gyártói alkatrész kiválasztása" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "URL link a beszállítói alkatrészhez" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "Beszállítói alkatrész leírása" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Megjegyzés" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "alap költség" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimális díj (pl. tárolási díj)" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Csomagolás" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Alkatrész csomagolás" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Csomagolási mennyiség" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Egy csomagban kiszállítható mennyiség, hagyd üresen az egyedi tételeknél." -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "többszörös" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Többszörös rendelés" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "Beszállítónál elérhető mennyiség" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Elérhetőség frissítve" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "Utolsó elérhetőségi adat frissítés" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4361,7 +4457,7 @@ msgstr "Beszállító által használt alapértelmezett pénznem" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4373,7 +4469,7 @@ msgstr "Készleten" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Inaktív" @@ -4431,16 +4527,16 @@ msgstr "Kép letöltése URL-ről" msgid "Delete image" msgstr "Kép törlése" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Vevő" @@ -4454,7 +4550,7 @@ msgid "Phone" msgstr "Telefonszám" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "Kép eltávolítása" @@ -4463,19 +4559,19 @@ msgid "Remove associated image from this company" msgstr "Céghez rendelt kép eltávolítása" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Törlés" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "Kép feltöltése" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "Kép letöltése" @@ -4629,7 +4725,7 @@ msgstr "Gyártói alkatrész törlése" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Belső alkatrész" @@ -4639,7 +4735,7 @@ msgstr "Nincs elérhető gyártói információ" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4659,8 +4755,12 @@ msgstr "Paraméterek" msgid "New Parameter" msgstr "Új paraméter" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "Paraméter hozzáadása" @@ -4725,12 +4825,12 @@ msgstr "Beszállítói alkatrész törlése" msgid "No supplier information available" msgstr "Nincs elérhető beszállítói információ" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "SKU (leltári azonosító)" @@ -4745,7 +4845,7 @@ msgstr "Új készlet tétel létrehozása" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Új készlet tétel" @@ -4763,29 +4863,33 @@ msgstr "Árinformációk" msgid "Add Price Break" msgstr "Ársáv hozzáadása" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "Beszállítói alkatrész QR kód" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "Vonalkód hozzárendelése a beszállítói alkatrészhez" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "Alkatrész elérhetőség frissítése" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Készlet tételek" @@ -4823,83 +4927,91 @@ msgstr "Kiküldve" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "Oszlopok" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "Adat" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "Hibák" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Érvényes" @@ -4915,27 +5027,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4971,52 +5095,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "Másolatok" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "Címkénkénti nyomtatandó mennyiség" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "Csatlakoztatba" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Ismeretlen" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "Nyomtatás" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "Nincs papír" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "Nincs kapcsolat" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "Címkenyomtató" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "Közvetlen címkenyomtatás különféle tételekre." -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "Nyomtató helye" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "Nyomtató korlátozása egy készlethelyhez" @@ -5076,7 +5204,7 @@ msgstr "Konfiguráció típusa" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Teljes ár" @@ -5097,9 +5225,9 @@ msgstr "Van árazás" msgid "No matching purchase order found" msgstr "Nincs egyező beszerzési rendelés" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Rendelés" @@ -5112,26 +5240,26 @@ msgstr "A rendelés teljesítve" msgid "Order Pending" msgstr "A rendelés függőben" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Beszerzési rendelés" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "Visszavétel" @@ -5159,7 +5287,7 @@ msgstr "Rendelés leírása (opcionális)" msgid "Select project code for this order" msgstr "Válassz projektszámot ehhez a rendeléshez" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Link külső weboldalra" @@ -5183,11 +5311,11 @@ msgstr "Kapcsolattartó ehhez a rendeléshez" msgid "Company address for this order" msgstr "Cég címei ehhez a rendeléshez" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Rendelés azonosító" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Beszerzési rendelés állapota" @@ -5196,7 +5324,7 @@ msgid "Company from which the items are being ordered" msgstr "Cég akitől a tételek beszerzésre kerülnek" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Beszállítói azonosító" @@ -5208,15 +5336,15 @@ msgstr "Beszállítói rendelés azonosító kód" msgid "received by" msgstr "érkeztette" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Kiállítás dátuma" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Kiállítás dátuma" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Rendelés teljesítési dátuma" @@ -5224,501 +5352,501 @@ msgstr "Rendelés teljesítési dátuma" msgid "Part supplier must match PO supplier" msgstr "Az alkatrész beszállítója meg kell egyezzen a beszerzési rendelés beszállítójával" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "Mennyiség pozitív kell legyen" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Cég akinek a tételek értékesítésre kerülnek" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Vevői azonosító " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "Megrendelés azonosító kódja a vevőnél" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Kiszállítás dátuma" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "szállította" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "Csak nyitott rendelés jelölhető késznek" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "A rendelés nem jelölhető késznek mivel függő szállítmányok vannak" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "A rendelés nem jelölhető késznek mivel nem teljesített sortételek vannak" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Tétel mennyiség" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "Sortétel azonosító" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Sortétel megjegyzései" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Cél dátuma ennek a sortételnek (hagyd üresen a rendelés céldátum használatához)" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "Sortétel leírása (opcionális)" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Kontextus" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "További kontextus ehhez a sorhoz" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Egységár" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "Beszállítói alkatrésznek egyeznie kell a beszállítóval" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "törölve" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Beszállítói alkatrész" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Beérkezett" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Érkezett tételek száma" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Beszerzési ár" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Beszerzési egységár" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Mit szeretne a vevő hol tároljuk ezt az alkatrészt?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtuális alkatrészt nem lehet vevői rendeléshez adni" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "Csak értékesíthető alkatrészeket lehet vevői rendeléshez adni" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Eladási ár" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Eladási egységár" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Kiszállítva" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Szállított mennyiség" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Szállítás dátuma" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Szállítási dátum" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "Kézbesítés dátuma" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Ellenőrizte" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Felhasználó aki ellenőrizte ezt a szállítmányt" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Szállítmány" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Szállítmány száma" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Nyomkövetési szám" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Szállítmány nyomkövetési információ" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Számlaszám" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Hozzátartozó számla referencia száma" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Szállítmány már elküldve" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "Szállítmány nem tartalmaz foglalt készlet tételeket" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "Készlet tétel nincs hozzárendelve" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Nem foglalható készlet egy másik fajta alkatrész sortételéhez" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Nem foglalható készlet egy olyan sorhoz amiben nincs alkatrész" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "A lefoglalandó mennyiség nem haladhatja meg a készlet mennyiségét" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "Vevői rendelés nem egyezik a szállítmánnyal" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "Szállítmány nem egyezik a vevői rendeléssel" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Sor" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "Vevői rendelés szállítmány azonosító" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Tétel" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Válaszd ki a foglalásra szánt készlet tételt" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Készlet foglalási mennyiség megadása" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "Visszavétel azonosító" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "Cég akitől a tételek visszavételre kerülnek" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "Visszavétel állapota" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "Csak szériaszámos tételek rendelhetők visszaszállítási utasításhoz" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "Válaszd ki a vevőtől visszavenni kívánt tételt" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "Visszavétel dátuma" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "Mikor lett visszavéve a tétel" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "Kimenetel" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "Sortétel végső kimenetele" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "Sortétel visszaküldésének vagy javításának költsége" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Sortételek" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "Kész sorok" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "A rendelést nem lehet törölni" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "Rendelés lezárása teljesítetlen sortételek esetén is" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "A rendelésben teljesítetlen sortételek vannak" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "A rendelés nem nyitott" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "Automata árazás" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "Beszerzési ár automatikus számítása a beszállítói alkatrész adatai alapján" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Beszérzési ár pénzneme" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "Elemek összevonása" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "Azonos forrás és cél dátumú Alkatrész tételeinek összevonása egy tételre" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Belső cikkszám" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "Beszállítói alkatrészt meg kell adni" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "Beszerzési rendelést meg kell adni" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "A beszállítónak egyeznie kell a beszerzési rendelésben lévővel" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "A beszerzési rendelésnek egyeznie kell a beszállítóval" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Sortétel" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "Sortétel nem egyezik a beszerzési megrendeléssel" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Válassz cél helyet a beérkezett tételeknek" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "Írd be a batch kódját a beérkezett tételeknek" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Írd be a sorozatszámokat a beérkezett tételekhez" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Vonalkód" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "Beolvasott vonalkód" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Ez a vonalkód már használva van" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Egész számú mennyiség szükséges az egyedi követésre kötelezett alkatrészeknél" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "Sortételt meg kell adni" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "A cél helyet kötelező megadni" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "Megadott vonalkódoknak egyedieknek kel lenniük" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Eladási ár pénzneme" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "Nincsenek szállítmány részletek megadva" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "Sortétel nincs hozzárendelve ehhez a rendeléshez" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "Mennyiség pozitív kell legyen" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Írd be a sorozatszámokat a kiosztáshoz" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "Szállítmány kiszállítva" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "Szállítmány nincs hozzárendelve ehhez a rendeléshez" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "Nincs találat a következő sorozatszámokra" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "A következő sorozatszámok már ki lettek osztva" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "Visszavétel sortétel" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "Sortétel nem egyezik a visszavétellel" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "A sortétel már beérkezett" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "Csak folyamatban lévő megrendelés tételeit lehet bevételezni" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "Sortétel pénzneme" @@ -5928,13 +6056,13 @@ msgstr "Kijelöltek másolása" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Sor törlése" @@ -6048,8 +6176,8 @@ msgstr "Vevői azonosító" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6114,7 +6242,8 @@ msgid "Pending Shipments" msgstr "Függő szállítmányok" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Műveletek" @@ -6144,30 +6273,21 @@ msgstr "A {part} egységára {price}-ra módosítva" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "A {part} alkatrész módosított egységára {price} mennyisége pedig {qty}" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "Alkatrész ID" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Alkatrész leírása" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "IPN (Belső Cikkszám)" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Változat" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Kulcsszavak" @@ -6179,7 +6299,7 @@ msgstr "Alkatrész ábra" msgid "Category ID" msgstr "Kategória ID" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Kategória neve" @@ -6192,11 +6312,11 @@ msgstr "Alapértelmezett készlethely ID" msgid "Default Supplier ID" msgstr "Alapértelmezett beszállító ID" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Ebből a sablonból" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Minimális készlet" @@ -6204,19 +6324,19 @@ msgstr "Minimális készlet" msgid "Used In" msgstr "Felhasználva ebben" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "Gyártásban" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "Minimum költség" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "Maximum költség" @@ -6233,14 +6353,14 @@ msgstr "Szülő neve" msgid "Category Path" msgstr "Kategória elérési út" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Alkatrészek" @@ -6257,13 +6377,13 @@ msgstr "Alkatrészjegyzék tétel ID" msgid "Parent IPN" msgstr "Szülő IPN" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "Minimum ár" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6301,7 +6421,7 @@ msgstr "Lépcsőzetes" msgid "Include sub-categories in filtered results" msgstr "Szűrt eredmények tartalmazzák az alkategóriákat" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "Szülő" @@ -6345,29 +6465,38 @@ msgstr "Teljes alkatrészjegyzék jóváhagyása" msgid "This option must be selected" msgstr "Ennek az opciónak ki kll lennie választva" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Kategória" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "Használ" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Alapértelmezett hely" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Teljes készlet" @@ -6376,753 +6505,784 @@ msgstr "Teljes készlet" msgid "Input quantity for price calculation" msgstr "Add meg a mennyiséget az árszámításhoz" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Alkatrész kategória" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Alkatrész kategóriák" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Ebben a kategóriában lévő alkatrészek helye alapban" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "Szerkezeti" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "A szerkezeti alkatrész kategóriákhoz nem lehet direktben alkatrészeket hozzáadni, csak az alkategóriáikhoz." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Alapértelmezett kulcsszavak" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "Ebben a kategóriában évő alkatrészek kulcsszavai alapban" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Ikon" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Ikon (opcionális)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Nem lehet az alkatrészkategóriát szerkezeti kategóriává tenni, mert már vannak itt alkatrészek!" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "Hibás választás a szülő alkatrészre" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Az '{self}' alkatrész nem használható a '{parent}' alkatrészjegyzékében (mert rekurzív lenne)" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Az '{parent}' alkatrész szerepel a '{self}' alkatrészjegyzékében (rekurzív)" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "Az IPN belső cikkszámnak illeszkednie kell a {pattern} regex mintára" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "Létezik már készlet tétel ilyen a sorozatszámmal" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "Azonos IPN nem engedélyezett az alkatrészekre, már létezik ilyen" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "Ilyen nevű, IPN-ű és reviziójú alkatrész már létezik." -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "Szerkezeti kategóriákhoz nem lehet alkatrészeket rendelni!" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Alkatrész neve" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "Sablon-e" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Ez egy sablon alkatrész?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Ez az alkatrész egy másik változata?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "Alkatrész leírása (opcionális)" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "Alkatrész kulcsszavak amik segítik a megjelenést a keresési eredményekben" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Alkatrész kategória" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "Alkatrész változat vagy verziószám (pl. szín, hossz, revízió, stb.)" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "Alapban hol tároljuk ezt az alkatrészt?" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Alapértelmezett beszállító" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "Alapértelmezett beszállítói alkatrész" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "Alapértelmezett lejárat" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "Lejárati idő (napban) ennek az alkatrésznek a készleteire" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "Minimálisan megengedett készlet mennyiség" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "Alkatrész mértékegysége" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Gyártható-e ez az alkatrész más alkatrészekből?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Felhasználható-e ez az alkatrész más alkatrészek gyártásához?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "Kell-e külön követni az egyes példányait ennek az alkatrésznek?" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "Rendelhető-e ez az alkatrész egy külső beszállítótól?" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "Értékesíthető-e önmagában ez az alkatrész a vevőknek?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Aktív-e ez az alkatrész?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ez egy virtuális nem megfogható alkatrész, pl. szoftver vagy licenc?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "Alkatrészjegyzék ellenőrző összeg" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "Tárolt alkatrészjegyzék ellenőrző összeg" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "Alkatrészjegyzéket ellenőrizte" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "Alkatrészjegyzék ellenőrzési dátuma" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Létrehozó" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "Alkatrész felelőse" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "Utolsó leltár" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Több értékesítése" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "Árszámítások gyorstárazásához használt pénznem" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "Minimum alkatrészjegyzék költség" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "Összetevők minimum költsége" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "Maximum alkatrészjegyzék költség" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "Összetevők maximum költsége" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "Minimum beszerzési ár" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "Eddigi minimum beszerzési költség" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "Maximum beszerzési ár" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "Eddigi maximum beszerzési költség" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "Minimum belső ár" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "Minimum költség a belső ársávok alapján" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "Maximum belső ár" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "Maximum költség a belső ársávok alapján" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "Minimum beszállítói ár" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "Minimum alkatrész ár a beszállítóktól" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "Maximum beszállítói ár" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "Maximum alkatrész ár a beszállítóktól" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "Minimum alkatrészváltozat ár" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "Alkatrészváltozatok számolt minimum költsége" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "Maximum alkatrészváltozat ár" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "Alkatrészváltozatok számolt maximum költsége" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "Minimum költség felülbírálása" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "Maximum költség felülbírálása" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "Számított általános minimum költség" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "Számított általános maximum költség" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "Minimum eladási ár" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "Minimum eladási ár az ársávok alapján" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "Maximum eladási ár" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "Maximum eladási ár az ársávok alapján" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "Minimum eladási költség" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "Eddigi minimum eladási ár" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "Maximum eladási költség" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "Eddigi maximum eladási ár" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "Leltározható alkatrész" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "Tételszám" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "Egyedi készlet tételek száma a leltárkor" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "Teljes készlet a leltárkor" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Dátum" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "Leltározva ekkor" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "További megjegyzések" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "Leltározta" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "Minimum készlet érték" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "Becsült minimum raktárkészlet érték" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "Maximum készlet érték" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "Becsült maximum raktárkészlet érték" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "Riport" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "Leltár riport fájl (generált)" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "Alkatrész szám" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "Leltározott alkatrészek száma" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "Felhasználó aki a leltár riportot kérte" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "Hibás sablon név - legalább egy alfanumerikus karakter kötelező" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "A lehetőségek egyediek kell legyenek" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "Teszt sablont csak követésre kötelezett alkatrészhez lehet csinálni" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "Már létezik ilyen azonosítójú Teszt sablon ehhez az alkatrészhez" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Teszt név" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "Add meg a teszt nevét" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "Teszt azonosító" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "Egyszerűsített Teszt azonosító" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Teszt leírása" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "Adj hozzá egy leírást ehhez a teszthez" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Engedélyezve" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "Teszt engedélyezve?" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Kötelező" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "Szükséges-e hogy ez a teszt sikeres legyen?" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Kötelező érték" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően érték legyen rendelve?" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "Kötelező melléklet" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően fájl melléklet legyen rendelve?" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "Lehetőségek" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "Jelölőnégyzet paraméternek nem lehet mértékegysége" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "Jelölőnégyzet paraméternek nem lehetnek választási lehetőségei" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "A paraméter sablon nevének egyedinek kell lennie" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "Paraméter neve" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "Paraméter mértékegysége" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "Paraméter leírása" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "Jelölőnégyzet" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "Ez a paraméter egy jelölőnégyzet?" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "Választható lehetőségek (vesszővel elválasztva)" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "Hibás választás a paraméterre" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "Szülő alkatrész" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "Paraméter sablon" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Paraméter értéke" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Alapértelmezett érték" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "Alapértelmezett paraméter érték" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "Alkatrész ID vagy alkatrész név" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "Egyedi alkatrész ID értéke" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "Alkatrész IPN érték" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "Szint" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "Alkatrészjegyzék szint" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Szülő alkatrész kiválasztása" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "Al alkatrész" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "Ez az alkatrészjegyzék tétel opcionális" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Ez az alkatrészjegyzék tétel fogyóeszköz (készlete nincs követve a gyártásban)" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Többlet" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Becsült gyártási veszteség (abszolút vagy százalékos)" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "Alkatrészjegyzék tétel azonosító" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "Alkatrészjegyzék tétel megjegyzései" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "Ellenőrző összeg" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "Alkatrészjegyzék sor ellenőrző összeg" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "Jóváhagyva" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "Ez a BOM tétel jóvá lett hagyva" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "Öröklődött" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Ezt az alkatrészjegyzék tételt az alkatrész változatok alkatrészjegyzékei is öröklik" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Változatok" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Alkatrészváltozatok készlet tételei használhatók ehhez az alkatrészjegyzék tételhez" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "A mennyiség egész szám kell legyen a követésre kötelezett alkatrészek esetén" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "Al alkatrészt kötelező megadni" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "Alkatrészjegyzék tétel helyettesítő" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "A helyettesítő alkatrész nem lehet ugyanaz mint a fő alkatrész" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "Szülő alkatrészjegyzék tétel" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "Helyettesítő alkatrész" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "1.rész" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "2.rész" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "Válassz kapcsolódó alkatrészt" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "Alkatrész kapcsolat nem hozható létre önmagával" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "Már létezik duplikált alkatrész kapcsolat" @@ -7130,7 +7290,7 @@ msgstr "Már létezik duplikált alkatrész kapcsolat" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "Felsőbb szintű alkatrész kategória" @@ -7148,7 +7308,7 @@ msgstr "Eredmények" msgid "Number of results recorded against this template" msgstr "Eszerint a sablon szerint rögzített eredmények száma" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Beszerzési pénzneme ennek a készlet tételnek" @@ -7156,303 +7316,312 @@ msgstr "Beszerzési pénzneme ennek a készlet tételnek" msgid "Number of parts using this template" msgstr "Ennyi alkatrész használja ezt a sablont" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "Nincs kiválasztva alkatrész" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "Válassz kategóriát" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "Eredeti alkatrész" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "Válassz eredeti alkatrészt a másoláshoz" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Kép másolása" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "Kép másolása az eredeti alkatrészről" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "Alkatrészjegyzék másolása" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "Alkatrészjegyzék másolása az eredeti alkatrészről" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Paraméterek másolása" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "Paraméterek másolása az eredeti alkatrészről" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "Megjegyzések másolása" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "Megjegyzések másolása az eredeti alkatrészről" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "Kezdeti készlet mennyiség" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Add meg a kezdeti készlet mennyiséget. Ha nulla akkor nem lesz készlet létrehozva." -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "Kezdeti készlet hely" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "Add meg a kezdeti készlet helyét" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "Válassz beszállítót (hagyd üresen ha nem kell létrehozni)" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "Válassz gyártót (hagyd üresen ha nem kell létrehozni)" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "Gyártói cikkszám" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "A kiválasztott cég nem érvényes beszállító" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "A kiválasztott cég nem érvényes gyártó" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "Van már ilyen gyártói alkatrész" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "Van már ilyen beszállítói alkatrész" -#: part/serializers.py:864 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "Nem lefoglalt készlet" -#: part/serializers.py:867 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "Variánsok Raktárkészlet" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "Alkatrész másolása" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "Kezdeti adatok másolása egy másik alkatrészről" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "Kezdeti készlet" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "Kezdeti készlet mennyiség létrehozása" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "Beszállító információ" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "Kezdeti beszállító adatok hozzáadása" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "Kategória paraméterek másolása" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "Paraméter sablonok másolása a kiválasztott alkatrész kategóriából" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "Meglévő kép" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "A meglévő alkatrész képfájl neve" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "A képfájl nem létezik" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Leltár riport korlátozása bizonyos alkatrészre és variánsra" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Leltár riport korlátozása bizonyos alkatrész kategóriára és az alatta lévőkre" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Leltár riport korlátozása bizonyos készlethelyre és az alatta lévőkre" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "Külső készlet nélkül" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "Külső helyeken lévő készlet nélkül" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Riport létrehozása" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "Riport fájl létrehozása a számított leltár adatokkal" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "Alaktrészek frissítése" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "Megadott alkatrészek frissítése a számított leltár adatokkal" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "Leltár funkció nincs engedélyezve" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "Számított minimum ár felülbírálása" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "Minimum ár pénzneme" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "Számított maximum ár felülbírálása" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "Maximum ár pénzneme" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "Frissítés" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "Alkatrész árak frissítése" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Megadott pénznem átváltása {default_currency}-re sikertelen" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "A Minimum ár nem lehet nagyobb mint a Maximum ár" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "A Maximum ár nem lehet kisebb mint a Minimum ár" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "Gyártható" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "Válassz alkatrészt ahonnan az alkatrészjegyzéket másoljuk" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "Létező adat törlése" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "Meglévő alkatrészjegyzék tételek törlése a másolás előtt" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "Örököltekkel együtt" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "Sablon alkatrészektől örökölt alkatrészjegyzék tételek használata" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "Hibás sorok kihagyása" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "Engedély a hibás sorok kihagyására" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "Helyettesítő alkatrészek másolása" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "Helyettesítő alkatrészek másolása az alkatrészjegyzék tételek másolásakor" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "Meglévő alkatrészjegyzék törlése" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "Meglévő alkatrészjegyzék tételek törlése a feltöltés előtt" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "Nincs megadva alkatrész oszlop" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "Több egyező alkatrész is található" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "Nincs egyező alkatrész" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "Az alkatrész nem lett összetevőként jelölve" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "Mennyiség nincs megadva" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Érvénytelen mennyiség" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "Legalább egy alkatrészjegyzék tétel szükséges" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "Teljes mennyiség" @@ -7604,7 +7773,7 @@ msgstr "Leltár információ hozzáadása" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "Leltár" @@ -7791,7 +7960,7 @@ msgstr "Készlet számolása" msgid "Transfer part stock" msgstr "Készlet áthelyezése" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "Készlet műveletek" @@ -7840,7 +8009,7 @@ msgid "Part is virtual (not a physical part)" msgstr "Virtuális (nem kézzelfogható alkatrész)" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "Alkatrész részletei" @@ -7854,51 +8023,47 @@ msgstr "Gyártáshoz lefoglalva" msgid "Allocated to Sales Orders" msgstr "Vevő rendeléshez lefoglalva" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "Gyártható" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "Minimális készlet" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "Ártartomány" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Legutolsó sorozatszám" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "Sorozatszámra keresés" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "Alkatrész QR kódja" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "Vonalkód hozzárendelése az alkatrészhez" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "Számítás" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "Alkatrészhez rendelt kép eltávolítása" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "Nincs egyező kép" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "Részletek elrejtése" @@ -7956,9 +8121,9 @@ msgstr "Változatok" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Készlet" @@ -8004,7 +8169,7 @@ msgstr "Szerkesztés" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Utoljára módosítva" @@ -8077,8 +8242,8 @@ msgstr "Árazás Frissítése" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Nincs készlet" @@ -8156,7 +8321,7 @@ msgstr "Az alkatrész képe nem található" msgid "Part Pricing" msgstr "Alkatrész árak" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "Plugin nem törölhető mivel még aktív" @@ -8178,7 +8343,7 @@ msgid "Match found for barcode data" msgstr "Egyezés vonalkódra" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "Ez a vonalkód már egy másik tételé" @@ -8222,7 +8387,7 @@ msgstr "Vonalkód nem egyezik egy létező készlet tétellel sem" msgid "Stock item does not match line item" msgstr "Készlet tétel nem egyezik a sortétellel" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "Nincs elegendő" @@ -8346,7 +8511,7 @@ msgstr "Alapvető vonalkód támogatást ad" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8407,10 +8572,12 @@ msgid "Provides native support for printing PDF labels" msgstr "PDF címkék nyomtatásához beépített támogatás" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "Debug mód" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "Debug mód engedélyezése - nyers HTML-t ad vissza PDF helyett" @@ -8422,55 +8589,55 @@ msgstr "InvenTree címkenyomtató" msgid "Provides support for printing using a machine" msgstr "Nyomtatási támogatást nyújt egy Berendezés által" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "utoljára használva" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "Opciók" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "Címke oldal méret" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "Címkék kihagyása" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "Hagyjon ki ennyi számú címkét a címke ívek nyomtatásakor" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "Szegély" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "Az egyes címkék körüli margó" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "Fekvő" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "Fekvő módban nyomtatás" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "Inventree Címke Ív Nyomtató" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "Több címke egy ívre helyezése" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "Címke túl nagy a lapmérethez képest" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "Nem készült címke" @@ -8764,7 +8931,7 @@ msgid "No valid objects provided to template" msgstr "Nincs érvényes objektum megadva a sablonhoz" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8892,7 +9059,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "Haladás" @@ -8994,7 +9161,7 @@ msgstr "Beszállító törölve lett" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Egységár" @@ -9007,26 +9174,11 @@ msgstr "Egyéb tételek" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "Összesen" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Sorozatszám" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "Készlethely tételek" @@ -9040,11 +9192,11 @@ msgid "Test Results" msgstr "Teszt eredmények" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "Teszt" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Eredmény" @@ -9065,13 +9217,13 @@ msgid "No result" msgstr "Nincs eredmény" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "Beépített tételek" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Sorozatszám" @@ -9128,7 +9280,7 @@ msgstr "Beszállító neve" msgid "Customer ID" msgstr "Vevő ID" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "Beépítve ebbe" @@ -9153,9 +9305,9 @@ msgstr "Felülvizsgálat szükséges" msgid "Delete on Deplete" msgstr "Törlés ha kimerül" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "Lejárati dátum" @@ -9171,7 +9323,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "Szűrt eredmények tartalmazzák az alhelyeket" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "Szülő hely" @@ -9195,7 +9347,7 @@ msgstr "Lejárat előtt" msgid "Expiry date after" msgstr "Lejárat után" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9233,7 +9385,7 @@ msgstr "Készlethely típusok" msgid "Default icon for all locations that have no icon set (optional)" msgstr "Alapértelmezett ikon azokhoz a helyekhez, melyeknek nincs ikonja beállítva (válaszható)" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9245,12 +9397,12 @@ msgstr "Készlet hely" msgid "Stock Locations" msgstr "Készlethelyek" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Tulajdonos" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Tulajdonos kiválasztása" @@ -9258,7 +9410,7 @@ msgstr "Tulajdonos kiválasztása" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "A szerkezeti raktári helyekre nem lehet direktben raktározni, csak az al-helyekre." -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "Külső" @@ -9267,7 +9419,7 @@ msgstr "Külső" msgid "This is an external stock location" msgstr "Ez egy külső készlethely" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "Helyszín típusa" @@ -9284,7 +9436,7 @@ msgstr "Nem lehet ezt a raktári helyet szerkezetivé tenni, mert már vannak it msgid "Stock items cannot be located into structural stock locations!" msgstr "A szerkezeti raktári helyre nem lehet készletet felvenni!" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "Virtuális alkatrészből nem lehet készletet létrehozni" @@ -9301,236 +9453,236 @@ msgstr "Mennyiség 1 kell legyen a sorozatszámmal rendelkező tételnél" msgid "Serial number cannot be set if quantity greater than 1" msgstr "Nem lehet sorozatszámot megadni ha a mennyiség több mint egy" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "A tétel nem tartozhat saját magához" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "A tételnek kell legyen gyártási azonosítója ha az is_bulding igaz" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "Gyártási azonosító nem ugyanarra az alkatrész objektumra mutat" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Szülő készlet tétel" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "Kiindulási alkatrész" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Válassz egy egyező beszállítói alkatrészt ehhez a készlet tételhez" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "Hol található ez az alkatrész?" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "A csomagolása ennek a készlet tételnek itt van tárolva" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "Ez a tétel be van építve egy másik tételbe?" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "Sorozatszám ehhez a tételhez" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "Batch kód ehhez a készlet tételhez" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "Készlet mennyiség" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "Forrás gyártás" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "Gyártás ehhez a készlet tételhez" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "Felhasználva ebben" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "Felhasználva ebben a gyártásban" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "Forrás beszerzési rendelés" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Beszerzés ehhez a készlet tételhez" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "Cél vevői rendelés" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Készlet tétel lejárati dátuma. A készlet lejártnak tekinthető ezután a dátum után" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "Törlés ha kimerül" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "Készlet tétel törlése ha kimerül" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "Egy egység beszerzési ára a beszerzés időpontjában" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "Alkatrésszé alakítva" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "Az alkatrész nem követésre kötelezett" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "Mennyiség egész szám kell legyen" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "A mennyiség nem haladhatja meg az elérhető készletet ({self.quantity})" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "A sorozatszám egész számok listája kell legyen" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "A mennyiség nem egyezik a megadott sorozatszámok számával" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "A sorozatszámok már léteznek" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "Ez a Teszt sablon nem létezik" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "Készlet tétel beépül egy másikba" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "A készlet tétel más tételeket tartalmaz" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "Készlet tétel gyártás alatt" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "Követésre kötelezett készlet nem vonható össze" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "Duplikált készlet tételek vannak" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "A készlet tétel ugyanarra az alkatrészre kell vonatkozzon" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "A készlet tétel ugyanarra a beszállítói alkatrészre kell vonatkozzon" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "Készlet tételek állapotainak egyeznie kell" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "Készlet tétel nem mozgatható mivel nincs készleten" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "Bejegyzés megjegyzései" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "Ehhez a teszthez meg kell adni értéket" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "Ehhez a teszthez fel kell tölteni mellékletet" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "Teszt eredménye" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "Teszt kimeneti értéke" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "Teszt eredmény melléklet" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "Tesztek megjegyzései" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "Teszt állomás" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "A tesztet elvégző tesztállomás azonosítója" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "Elkezdődött" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "A teszt indításának időpontja" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "Befejezve" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "A teszt befejezésének időpontja" @@ -9578,222 +9730,217 @@ msgstr "" msgid "Test template for this result" msgstr "Az eredmény Teszt sablonja" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "Sablon azonosító vagy Teszt név szükséges" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "A tesztet nem lehet a kezdésnél hamarabb befejezni" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "Szériaszám túl nagy" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "Szülő tétel" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "Csomagolási mennyiség használata: a megadott mennyiség ennyi csomag" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "Lefoglalt mennyiség" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "Lejárt" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "Gyermek tételek" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "Készlet tétel beszerzési ára, per darab vagy csomag" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "Add meg hány készlet tételt lássunk el sorozatszámmal" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "A mennyiség nem lépheti túl a rendelkezésre álló készletet ({q})" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "Írd be a sorozatszámokat az új tételekhez" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "Cél készlet hely" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "Opcionális megjegyzés mező" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "Sorozatszámokat nem lehet hozzárendelni ehhez az alkatrészhez" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "Válaszd ki a beépítésre szánt készlet tételt" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "Beépítendő mennyiség" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "Adja meg a beépítendő mennyiséget" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "Tranzakció megjegyzés hozzáadása (opcionális)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "A beépítendő mennyiség legalább 1 legyen" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "Készlet tétel nem elérhető" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "A kiválasztott alkatrész nincs az alkatrészjegyzékben" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "A beépítendő mennyiség nem haladhatja meg az elérhető mennyiséget" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "Cél hely a kiszedett tételeknek" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "Válassz alkatrészt amire konvertáljuk a készletet" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "A kiválasztott alkatrész nem megfelelő a konverzióhoz" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "Készlet tétel hozzárendelt beszállítói alkatrésszel nem konvertálható" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "Cél hely a visszatérő tételeknek" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "Válaszd ki a státuszváltásra szánt készlet tételeket" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "Nincs készlet tétel kiválasztva" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Alhelyek" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "Felsőbb szintű készlet hely" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "Az alkatrésznek értékesíthetőnek kell lennie" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "A tétel egy vevő rendeléshez foglalt" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "A tétel egy gyártási utasításhoz foglalt" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "Vevő akihez rendeljük a készlet tételeket" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "A kiválasztott cég nem egy vevő" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "Készlet hozzárendelés megjegyzései" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "A készlet tételek listáját meg kell adni" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "Készlet összevonás megjegyzései" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "Nem egyező beszállítók megengedése" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "Különböző beszállítói alkatrészekből származó készletek összevonásának engedélyezése" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "Nem egyező állapotok megjelenítése" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "Különböző állapotú készletek összevonásának engedélyezése" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "Legalább két készlet tételt meg kell adni" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "Nincs változás" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "Készlet tétel elsődleges kulcs értéke" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "Készlet tétel státusz kódja" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "Készlet tranzakció megjegyzései" @@ -9825,7 +9972,7 @@ msgstr "Karanténban" msgid "Legacy stock tracking entry" msgstr "Örökölt készlet követési bejegyzés" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Készlet tétel létrehozva" @@ -9881,7 +10028,7 @@ msgstr "Szülő tételből szétválasztva" msgid "Split child item" msgstr "Szétválasztott gyermek tétel" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Összevont készlet tétel" @@ -9901,7 +10048,7 @@ msgstr "Gyártási utasítás kimenete kész" msgid "Build order output rejected" msgstr "Gyártási utasítás kimenete elutasítva" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Gyártásra felhasználva" @@ -9962,7 +10109,7 @@ msgstr "Készlet tétel megjegyzések" msgid "Installed Stock Items" msgstr "Beépített készlet tételek" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "Készlet tétel beépítése" @@ -9970,7 +10117,7 @@ msgstr "Készlet tétel beépítése" msgid "Delete all test results for this stock item" msgstr "Készlet tétel összes teszt eredményének törlése" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "Teszt eredmény hozzáadása" @@ -9993,17 +10140,17 @@ msgid "Stock adjustment actions" msgstr "Készlet módosítási műveletek" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Leltározás" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "Készlet növelése" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "Készlet csökkentése" @@ -10012,12 +10159,12 @@ msgid "Serialize stock" msgstr "Sorozatszámok előállítása" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Készlet áthelyezése" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "Vevőhöz rendelése" @@ -10058,7 +10205,7 @@ msgid "Delete stock item" msgstr "Készlet tétel törlése" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Gyártás" @@ -10115,12 +10262,8 @@ msgstr "követkető oldal" msgid "Navigate to next serial number" msgstr "Menj a következő sorozatszámhoz" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "Elérhető mennyiség" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Nincs beállítva hely" @@ -10147,7 +10290,7 @@ msgid "No stocktake performed" msgstr "Még nem volt leltározva" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "készlet tétel" @@ -10256,7 +10399,7 @@ msgid "New Location" msgstr "Új hely" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "készlet hely" @@ -10534,11 +10677,11 @@ msgstr "URL kompatibilis név (Slug)" msgid "Part Settings" msgstr "Alkatrész beállítások" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "Alkatrész importálás" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "Alkatrész importálása" @@ -10757,9 +10900,9 @@ msgid "Rate" msgstr "Árfolyam" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Törlés" @@ -10780,7 +10923,7 @@ msgid "No project codes found" msgstr "Nem találhatók projektszámok" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "csoport" @@ -10799,12 +10942,12 @@ msgid "No category parameter templates found" msgstr "Nincs kategória paraméter sablon" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "Sablon szerkesztése" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "Sablon törlése" @@ -10868,7 +11011,7 @@ msgid "Home Page" msgstr "Főoldal" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11204,7 +11347,7 @@ msgstr "Email cím megerősítése" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Erősítsd meg hogy a %(email)s email a %(user_display)s felhasználó email címe." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Megerősítés" @@ -11437,7 +11580,7 @@ msgid "The following parts are low on required stock" msgstr "A következő alkatrészek szükséges készlete alacsony" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Szükséges mennyiség" @@ -11451,7 +11594,7 @@ msgid "Click on the following link to view this part" msgstr "Klikk a következő linkre az alkatrész megjelenítéséhez" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "Minimum mennyiség" @@ -11596,81 +11739,81 @@ msgstr "Ismeretlen válasz a kiszolgálótól" msgid "Invalid server response" msgstr "Érvénytelen válasz a szervertől" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "Vonalkód beolvasása" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Vonalkód beolvasása" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "Nincs URL a válaszban" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "Ez törli a vonalkód hozzárendelést" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "Leválasztás" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "Készlet tétel törlése" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "Készlet bevételezése adott helyre" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "Készlet tétel vonalkód beolvasása, amit bevételezzünk erre a helyre" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "Bevételezés" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "Nincs vonalkód beolvasva" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "Készlet tétel már beolvasva" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "Készlet tétel már ezen a helyen van" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "Hozzáadott készlet tétel" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "Vonalkód nem egyezik egy ismert készlet tétellel sem" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "Készlet tároló bevételezése adott helyre" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "Készlet tároló vonalkód beolvasása, amit bevételezzünk erre a helyre" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "A vonalkód nem egyezik egy ismert hellyel sem" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "Készlet áthelyezése a leolvasott helyre" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "A vonalkód nem egyezik egy ismert hellyel sem" @@ -11806,7 +11949,7 @@ msgstr "Alkatrészjegyzék betöltése az al-gyártmányhoz" msgid "Substitutes Available" msgstr "Vannak helyettesítők" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "Készletváltozatok engedélyezve" @@ -11826,30 +11969,30 @@ msgstr "Alkatrészjegyzék árazása nem teljes" msgid "No pricing available" msgstr "Nincsenek árak" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "Külső raktárkészlet" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "Nincs szabad" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "Változatokkal és helyettesítőkkel együtt" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "Változatokkal együtt" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "Helyettesítőkkel együtt" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "Fogyóeszköz tétel" @@ -11881,7 +12024,7 @@ msgstr "Alkatrészjegyzék megtekintése" msgid "No BOM items found" msgstr "Nem találhatók alkatrészjegyzék tételek" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "Szükséges alkatrész" @@ -11889,364 +12032,400 @@ msgstr "Szükséges alkatrész" msgid "Inherited from parent BOM" msgstr "Örökölve a szülő alkatrészjegyzéktől" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "Gyártási utasítás szerkesztése" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "Gyártási utasítás létrehozása" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "Gyártási utasítás törlése" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "Biztosan meg szeretnéd szakítani ezt a gyártást?" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "Ehhez a gyártáshoz készlet lett hozzárendelve" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "Ennek a gyártásnak befejezetlen kimenetei vannak" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "Gyártási utasítás készen áll a befejezésre" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "A rendelés nem jelölhető késznek mivel függő kimenetek vannak" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "Gyártási utasítás befejezetlen" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "Gyártási utasítás befejezése" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "Következő szabad sorozatszám" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "Legutolsó sorozatszám" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "Az alkatrészjegyzék követésre kötelezett alkatrészeket tartalmaz" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "A gyártási kimeneteket egyesével kell előállítani" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "A követésre kötelezett alkatrészekhez sorozatszámot lehet rendelni" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "Adj meg sorozatszámokat a több egyedi gyártási kimenet létrehozásához" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "Gyártási kimenet létrehozása" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "Készlet tételek foglalása ehhez a gyártási kimenethez" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "Készlet felszabadítása a gyártási kimenetből" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "Gyártási kimenet befejezése" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "Gyártási kimenet selejtezése" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "Gyártási kimenet törlése" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "Biztosan szeretnéd a már lefoglalt készlet tételeket felszabadítani ebből a gyártási utasításból?" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "Készlet tételek felszabadítása" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 +#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 +#: templates/js/translated/build.js:838 msgid "Select Build Outputs" msgstr "Gyártási kimenetek kiválasztása" -#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 -#: templates/js/translated/build.js:838 +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "Legalább egy gyártási kimenetet ki kell választani" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "A kiválasztott gyártási kimenetek késznek lesznek jelölve" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "Kimenet" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "Gyártási kimenetek befejezése" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "A kiválasztott gyártási kimenetek selejtnek lesznek jelölve" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "Selejtezett kimenetek elutasítottnak jelölve" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "A lefoglalt készlet már nem lesz elérhető" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "A befejezési státusza a gyártásnak nem fog változni" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "Gyártási kimenetek selejtezése" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "A kiválasztott gyártási kimenetek törölve lesznek" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "A gyártási kimenet adatai véglegesen törölve lesznek" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "A lefoglalt készlet tételek újra készletre kerülnek" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "Gyártási kimenetek törlése" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "Nincs gyártási utasításhoz történő foglalás" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "Hely nincs megadva" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "Kimenetek befejezése" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "Kimenetek selejtezése" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "Kimenetek törlése" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "gyártás kimenet" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "gyártás kimenetek" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "Gyártási kimenet műveletei" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "Nem található aktív gyártási kimenet" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "Lefoglalt sorok" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "Szükséges tesztek" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "Válassz alkatrészeket" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "Legalább egy alkatrész választása szükséges a foglaláshoz" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "Készlet foglalási mennyiség megadása" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "Minden alkatrész lefoglalva" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "Minden kiválasztott alkatrész teljesen lefoglalva" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "Válassz forrás helyet (vagy hagyd üresen ha bárhonnan)" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "Készlet foglalása a gyártási utasításhoz" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "Nincs egyező készlethely" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "Nincs egyező készlet" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "Automatikus készlet foglalás" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "A készlet automatikusan lefoglalásra kerül ehhez a gyártási utasításhoz, a következő feltételek szerint" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "Ha egy készlet hely meg van adva, akkor készlet csak arról a helyről lesz foglalva" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "Ha a készlet helyettesíthetőnek minősül, akkor az első rendelkezésre álló helyről lesz lefoglalva" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "Ha a helyettesítő készlet engedélyezve van, akkor ott az lesz használva ha az elsődleges alkatrésznek nincs készlete" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "Készlet tételek foglalása" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "Nincs a lekérdezéssel egyező gyártási utasítás" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "Kiválaszt" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "Gyártás késésben van" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "Nincs felhasználói információ" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "Készlet foglalások szerkesztése" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "Készlet foglalások törlése" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "Foglalás szerkesztése" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "Foglalás törlése" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "gyártás sor" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "gyártás sorok" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "Nincsenek gyártási sorok" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "Követésre kötelezett alkatrész" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "Mennyiségi egység" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "Van elegendő" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "Fogyóeszköz tétel" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "Követett tétel" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "Egyedileg nyilvántartott tételek lefoglalása egyedi gyártási kimenetekhez" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "Gyártási készlet" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "Készlet rendelés" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "Lefoglalt készlet" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "Készlet foglalások törlése" @@ -12393,7 +12572,7 @@ msgid "Delete Parameters" msgstr "Paraméterek törlése" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "Alkatrész rendelés" @@ -12410,34 +12589,34 @@ msgid "No manufacturer parts found" msgstr "Nincs gyártói alkatrész" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "Sablon alkatrész" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "Gyártmány alkatrész" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "Nem található paraméter" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "Paraméter szerkesztése" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "Paraméter törlése" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "Paraméter szerkesztése" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "Paraméter törlése" @@ -12533,61 +12712,61 @@ msgstr "Összes szűrő törlése" msgid "Create filter" msgstr "Szűrő létrehozása" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "Művelet tiltva" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "Létrehozás nem engedélyezett" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "Módosítás nem engedélyezett" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "Törlés nem engedélyezett" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "Megtekintés nem engedélyezett" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "Form nyitva tartása" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "Adj meg egy érvényes számot" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Form hibák vannak" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "Nincs találat" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "Keresés" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "Bevitel törlése" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "Fájl oszlop" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "Mező név" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "Oszlopok kiválasztása" @@ -12688,7 +12867,7 @@ msgstr "Nem találhatók hírek" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "Azonosító" @@ -12737,7 +12916,7 @@ msgid "Delete Line" msgstr "Sor törlése" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "Nem találhatók sortételek" @@ -12769,343 +12948,342 @@ msgstr "Alkatrész másolási opciók" msgid "Add Part Category" msgstr "Alkatrész kategória hozzáadása" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "Ikon (opcionális) - Az összes ikon felfedezése itt" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "Alkatrész kategória létrehozása" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "Új kategória létrehozása ez után" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "Alkatrész kategória létrehozva" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "Alkatrész kategória szerkesztése" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "Biztos hogy törölni szeretnéd ezt az alkatrész kategóriát?" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "Áthelyezés fentebbi kategóriába" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "Alkatrész kategória törlése" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "A kategóriában lévő alkatrészek kezelése" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "Alkategóriák kezelése" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "Alkatrész létrehozása" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "Új alkatrész létrehozása ez után" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "Alkatrész sikeresen létrehozva" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "Alkatrész szerkesztése" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "Alkatrész módosítva" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "Alkatrész változat létrehozása" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "Aktív alkatrész" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "Alkatrész nem törölhető mivel még aktív" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "Ezen alkatrész törlése nem vonható vissza" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "Ennek az alkatrésznek a teljes készlete törölve lesz" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "Ez az alkatrész minden alkatrészjegyzékből törölve lesz" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "Ehhez az alkatrészhez rendelt minden beszállítói és gyártói információ törölve lesz" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "Alkatrész törlése" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "Értesítések beállítva erre a tételre" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "Értesítések beállítva erre a tételre" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "Értesítések kérése erre a tételre" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "Értesítések letiltva erre a tételre" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "Az alkatrészjegyzék jóváhagyása minden sortételt jóvá fog hagyni" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "Alkatrészjegyzék jóváhagyása" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "Alkatrészjegyzék jóvá lett hagyva" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "Alkatrészjegyzék másolása" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "Alacsony készlet" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "Nincs elérhető készlet" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "Igény" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "Me" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "Virtuális alkatrész" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "Értesítésre beállított alkatrész" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "Értékesíthető alkatrész" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "Új leltár riport ütemezése." -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "Amint elkészül, az új leltár riport letölthető lesz." -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "Leltár riport létrehozása" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "Leltár riport beütemezve" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "Nincs elérhető leltár előzmény" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "Leltár bejegyzés szerkesztése" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "Leltár bejegyzés törlése" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "Nincs több változat" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "Nincs alkatrész paraméter sablon" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "Alkatrész paraméter sablon módosítása" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "Az összes erre a sablonra hivatkozó paraméter is törlésre kerül" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "Alkatrész paraméter sablon törlése" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "Nem található beszerzési rendelés" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "Ez a sortétel késésben van" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "Sortétel bevételezése" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "Alkatrész kapcsolatok törlése" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "Alkatrész kapcsolatok törlése" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "Nincs alkatrész" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "Kategória beállítása a kiválasztott alkatrészekhez" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "Alkatrész kategória beállítása" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "Kategória beállítása" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "alkatrész" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "alkatrészek" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "Nincs kategória" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "Megjelenítés listaként" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "Megjelenítés rácsnézetként" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "Nem találhatóak alkategóriák" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "Megjelenítés fában" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "Alkategóriák betöltése" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "Értesítésre beállított kategória" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "Nincs a lekérdezéssel egyező teszt sablon" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "találat" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" -msgstr "Teszt eredmény szerkesztése" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" +msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "Teszt eredmény törlése" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" +msgstr "" -#: templates/js/translated/part.js:2945 +#: templates/js/translated/part.js:2961 msgid "This test is defined for a parent part" msgstr "Ez a teszt a szülő alkatrészhez lett felvéve" -#: templates/js/translated/part.js:2961 +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "Teszt eredmény sablon szerkesztése" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "Teszt eredmény sablon törlése" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "Nincs megadva dátum" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "A megadott dátum a múltban van" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "Spekulatív" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "Az alkatrészhez nem áll rendelkezésre ütemezési információ" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "Hiba az alkatrész ütemezési információinak betöltésekor" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "Ütemezett készlet mennyiség" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "Maximum mennyiség" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "Minimális készlet" @@ -13318,108 +13496,121 @@ msgstr "Beérkezett mennyiség" msgid "Quantity to receive" msgstr "Érkező mennyiség" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "Készlet állapota" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "Vonalkód hozzáadása" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "Vonalkód eltávolítása" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "Add meg a helyet" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "Batch kód hozzáadása" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "Sorozatszám hozzáadása" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "Sorozatszámok" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "Rendelési kód" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "Érkező mennyiség" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "Bevételezés megerősítése" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "Beszerzési rendelés tételeinek bevételezése" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "Tétel vonalkód beolvasása" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "Beérkezett tétel vonalkódjának leolvasása (egyik meglévő készlet tétellel sem egyezhet)" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "Érvénytelen vonalkód adat" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "Rendelés késésben" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "Az összes kijelölt sortétel törlésre kerül" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "Töröljük a kiválasztott sortételeket?" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "Sortétel másolása" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "Sortétel szerkesztése" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "Sortétel törlése" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "Sortétel másolása" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "Sortétel szerkesztése" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13643,7 +13834,7 @@ msgstr "Készlet foglalások törlése" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "Vevőnek kiszállítva" @@ -13701,476 +13892,492 @@ msgstr "Eredmények összezárása" msgid "Remove results" msgstr "Eredmények eltávolítása" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "Készlet tétel sorszámozása" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "Készlet sorozatszámozás megerősítése" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "Alapértelmezett ikon minden készlethelyre melyhez nincs ikon rendelve (választható) - Válogass az ikonok közül" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "Készlethely típus hozzáadása" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "Készlet hely szerkesztése" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "Új készlet hely" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "Új készlethely létrehozása ez után" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "Készlet hely létrehozva" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "Biztosan törölni szeretnéd ezt a készlet helyet?" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "Szülő készlet helyre mozgatás" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "Készlethely törlése" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "Műveletek az ezen a helyen lévő tételekhez" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "Műveletek az al-helyekhez" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "Ezt az alkatrészt nem lehet sorozatszámozni" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "Mennyiség hozzáadása csomagolási egységenként egyedi tételek helyett" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "Add meg a kezdeti mennyiséget ehhez a készlet tételhez" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Add meg az új készlet tételhez tartozó sorozatszámokat (vagy hagyd üresen)" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "Készlet tétel lemásolva" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "Készlet tétel másolása" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "Biztosan törölni szeretnéd ezt a készlet tételt?" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "Készlet tétel törlése" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "Készlet tétel szerkesztése" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "Új tétel létrehozása ez után" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "Készlet tétel létrehozva" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "Több készlet tétel létre lett hozva" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "Sorozatszám keresése" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "Sorozatszám megadása" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "Adj meg egy sorozatszámot" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "Nincs egyező sorozatszám" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "Több egyező eredmény is van" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "Készlet hozzárendelés jóváhagyása" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "Készlet vevőhöz rendelése" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "Figyelem: az összevonási művelet nem vonható vissza" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "Némi információ elveszik a készlet összevonás során" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "A készlettörténet törölve lesz az összevont tételeknél" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "A beszállítói alkatrész információk törlődnek az összevont tételeknél" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "Készlet összevonás megerősítése" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "Készlet tételek összevonása" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "Készlet áthelyezése" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "Áthelyezés" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "Leltározás" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "Leltár" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "Készlet csökkentése" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "Kivesz" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "Készlet növelése" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Hozzáad" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "Készlet törlése" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "Egyedi követésre kötelezett tételeknél a menyiség nem módosítható" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "Készlet mennyiség megadása" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "Készlet tételek kiválasztása" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "Válassz legalább egy rendelkezésre álló készlet tételt" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "Készlet módosítás jóváhagyása" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "SIKER" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "SIKERTELEN" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "NINCS EREDMÉNY" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "Teszt sikeres" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "Teszt eredmény hozzáadása" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "Teszt eredmény szerkesztése" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "Teszt eredmény törlése" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "Nincs teszt eredmény" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "Teszt dátuma" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "Teszt elkezdődött" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "Teszt befejezve" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "Teszt eredmény szerkesztése" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "Teszt eredmény törlése" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "Gyártásban" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "Beépítve készlet tételbe" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "Vevő rendeléshez hozzárendelve" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "Nincs hely megadva" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "Készlet állapot módosítása" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "Készlet összevonása" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "Készlet törlése" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "készlet tételek" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "Beolvasás helyre" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "Készlet műveletek" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "Beépített tételek betöltése" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "Készlet tétel gyártás alatt" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "Egyedi követésre kötelezett készlet tétel lefoglalva" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "Készlet tétel teljes egészében lefoglalva" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "Készlet tétel részben lefoglalva" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "Készlet tétel beépítve egy másikba" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "Készlet tétel fel lett használva egy gyártásban" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "Készlet tétel lejárt" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "Készlet tétel hamarosan lejár" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "Készlet tétel elutasítva" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "Készlet tétel elveszett" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "Készlet tétel megsemmisült" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "Kimerült" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "Beszállítói alkatrész nincs megadva" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "Készletérték" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "Nincs a lekérdezésnek megfelelő készlet tétel" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "készlethelyek" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "Alhelyek betöltése" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "Részletek" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "Nincs változás" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "Alkatrész információ nem áll rendelkezésre" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "A hely már nem létezik" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "A gyártási utasítás már nem létezik" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "Beszerzési megrendelés már nem létezik" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "Vevői megrendelés már nem létezik" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "Visszavétel már nem létezik" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "Vevő már nem létezik" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "A készlet tétel már nem létezik" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "Hozzáadva" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "Eltávolítva" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "Nincsenek beépített tételek" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "Készlet tétel kiszedése" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "Válaszd ki a kiszedni való készlet tételt" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "Másik tétel beépítése ebbe a készlet tételbe" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "Készlet tételek csak akkor építhetők be ha teljesítik a következő kritériumokat" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "A készlet tétel egy olyan alkatrészre mutat ami alkatrészjegyzéke ennek a készlet tételnek" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "A készlet tétel jelenleg elérhető készleten" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "A készlet tétel még nem épült be egy másik tételbe" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "A készlet tétel követett vagy sorozatszámmal vagy batch kóddal" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "Válaszd ki a beépítendő alkatrészt" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "Válassz ki egy vagy több készlet tételt" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "Kiválasztott készlet tételek" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "Készlet állapot módosítása" diff --git a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po index 5de3f426f0..33751e0509 100644 --- a/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -56,26 +56,29 @@ msgstr "Detail terkait galat dapat dilihat di panel admin" msgid "Enter date" msgstr "Masukkan tanggal" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Catatan" @@ -132,7 +135,7 @@ msgstr "Domain surel yang diberikan tidak perbolehkan." msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Jumlah yang diberikan tidak valid" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "URL yang diberikan bukan file gambar yang valid" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 +msgid "Bulgarian" +msgstr "" + +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Ceko" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Denmark" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Jerman" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Yunani" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Inggris" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spanyol" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spanyol (Meksiko)" -#: InvenTree/locales.py:26 -msgid "Farsi / Persian" -msgstr "Farsi / Persia" - #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 +msgid "Farsi / Persian" +msgstr "Farsi / Persia" + +#: InvenTree/locales.py:29 +msgid "Finnish" +msgstr "" + +#: InvenTree/locales.py:30 msgid "French" msgstr "Perancis" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Ibrani" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Hungaria" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Itali" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Jepang" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Korea" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Belanda" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norwegia" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polandia" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugis" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugis (Brasil)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Rusia" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Swedia" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turki" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnam" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "Pilihan tidak valid" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Pilihan tidak valid" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Nama" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Nama" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Keterangan" @@ -464,8 +475,8 @@ msgstr "Keterangan" msgid "Description (optional)" msgstr "Keterangan (opsional)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Direktori" @@ -501,12 +512,12 @@ msgstr "Terjadi Kesalahan Server" msgid "An error has been logged by the server." msgstr "Sebuah kesalahan telah dicatat oleh server." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Harus berupa angka yang valid" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "Nilai tidak valid" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "File data" @@ -651,7 +662,7 @@ msgstr "URL file gambar external" msgid "Downloading images from remote URL is not enabled" msgstr "Unduhan gambar dari URL external tidak aktif" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "Informasi Sistem" msgid "About InvenTree" msgstr "Tentang InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Pesanan harus dibatalkan sebelum dapat dihapus" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Order Produksi" @@ -778,72 +789,72 @@ msgstr "Order Produksi" msgid "Build Orders" msgstr "Order Produksi" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Pilihan produksi induk tidak valid" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Referensi Order Produksi" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referensi" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Produksi Induk" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Produksi induk dari produksi ini" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Produksi induk dari produksi ini" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Bagian" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Pilih bagian untuk diproduksi" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Referensi Order Penjualan" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Order penjualan yang teralokasikan ke pesanan ini" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Lokasi Sumber" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Pilih dari lokasi mana stok akan diambil untuk produksi ini (kosongkan untuk mengambil stok dari mana pun)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Lokasi Tujuan" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Pilih lokasi di mana item selesai akan disimpan" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Jumlah Produksi" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Jumlah item stok yang akan dibuat" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Item selesai" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Jumlah stok item yang telah diselesaikan" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Status pembuatan" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Kode status pembuatan" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Kode Kelompok" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Kode kelompok untuk hasil produksi ini" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Tanggal Pembuatan" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Target tanggal selesai" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Target tanggal selesai produksi. Produksi akan menjadi terlambat setelah tanggal ini." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Tanggal selesai" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "diselesaikan oleh" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Diserahkan oleh" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Pengguna yang menyerahkan order ini" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Penanggung Jawab" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Tautan eksternal" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Tautan menuju URL eksternal" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Tidak ada hasil produksi yang ditentukan" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Hasil produksi sudah selesai" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Hasil produksi tidak sesuai dengan order produksi" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Jumlah harus lebih besar daripada nol" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Jumlah" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Item produksi harus menentukan hasil produksi karena bagian utama telah ditandai sebagai dapat dilacak" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Item stok teralokasikan terlalu banyak" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Jumlah yang dialokasikan harus lebih dari nol" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Jumlah harus 1 untuk stok dengan nomor seri" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Stok Item" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Sumber stok item" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Jumlah stok yang dialokasikan ke produksi" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Pasang ke" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Tujuan stok item" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Hasil Produksi" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Hasil produksi tidak sesuai dengan produksi induk" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Hasil bagian tidak sesuai dengan bagian dalam order produksi" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Hasil produksi ini sudah diselesaikan" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Hasil produksi tidak dialokasikan sepenuhnya" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Masukkan jumlah hasil pesanan" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Jumlah bagian yang dapat dilacak harus berupa angka bulat" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Jumlah harus angka bulat karena terdapat bagian yang dapat dilacak dalam daftar barang" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Nomor Seri" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Masukkan nomor seri untuk hasil pesanan" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Lokasi" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Alokasikan nomor seri secara otomatis" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Alokasikan item yang diperlukan dengan nomor seri yang sesuai secara otomatis" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Nomor-nomor seri berikut sudah ada atau tidak valid" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Daftar hasil pesanan harus disediakan" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Lokasi hasil pesanan yang selesai" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Terima Alokasi Tidak Lengkap" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Terima Tidak Teralokasikan" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Terima bahwa stok item tidak teralokasikan sepenuhnya ke pesanan ini" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Stok yang diperlukan belum teralokasikan sepenuhnya" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Terima Tidak Selesai" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Terima bahwa jumlah hasil produksi yang diperlukan belum selesai" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Jumlah produksi yang diperlukan masih belum cukup" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Order memiliki hasil produksi yang belum dilengkapi" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Hasil produksi" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Hasil pesanan harus mengarah ke pesanan yang sama" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part harus mengarah ke bagian yang sesuai dengan order produksi" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Item harus tersedia dalam stok" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Jumlah tersedia ({q}) terlampaui" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Hasil produksi harus ditentukan untuk mengalokasikan bagian yang terlacak" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Hasil produksi tidak dapat ditentukan untuk alokasi barang yang tidak terlacak" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Item yang dialokasikan harus disediakan" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lokasi stok, dari mana bahan/bagian akan diambilkan (kosongkan untuk mengambil dari lokasi mana pun)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Lokasi tidak termasuk" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Jangan ambil stok item dari lokasi yang dipilih" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Stok bergantian" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Item stok di beberapa lokasi dapat digunakan secara bergantian" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Stok pengganti" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Izinkan alokasi bagian pengganti" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Item tagihan material" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Produksi" msgid "Cancelled" msgstr "Dibatalkan" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Tampilkan kode QR" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Surel diperlukan" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Pengguna" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Tautan" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Lampiran" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "File tidak ditemukan" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Tautan eksternal tidak ditemukan" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Pilih file untuk dilampirkan" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Komentar" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "Diletakkan" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Dikirim" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "Lampiran perlu diunggah untuk tes ini" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Item stok dibuat" @@ -9880,7 +10027,7 @@ msgstr "Dipisah dari item induk" msgid "Split child item" msgstr "Pisah item dari barang induk" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Stok item digabungkan" @@ -9900,7 +10047,7 @@ msgstr "Order output produksi selesai" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Terpakai oleh order produksi" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Produksi" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Konfirmasi alamat surel" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Harap konfirmasikan bahwa %(email)s adalah alamat surel untuk pengguna %(user_display)s." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Konfirmasi" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po index 2cc5501b2e..a0feab49b5 100644 --- a/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -28,7 +28,7 @@ msgstr "L'utente non ha i permessi per vedere questo modello" #: InvenTree/conversion.py:160 #, python-brace-format msgid "Invalid unit provided ({unit})" -msgstr "" +msgstr "Unità fornita non valida ({unit})" #: InvenTree/conversion.py:177 msgid "No value provided" @@ -56,26 +56,29 @@ msgstr "I dettagli dell'errore possono essere trovati nel pannello di amministra msgid "Enter date" msgstr "Inserisci la data" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Note" @@ -132,7 +135,7 @@ msgstr "L'indirizzo di posta elettronica fornito non è approvato." msgid "Registration is disabled." msgstr "La registrazione è disabilitata." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Quantità inserita non valida" @@ -204,160 +207,168 @@ msgid "Supplied URL is not a valid image file" msgstr "L'URL fornito non è un file immagine valido" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "Arabo" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgaro" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Ceco" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Danese" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Tedesco" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Greco" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Inglese" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spagnolo" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spagnolo (Messicano)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "Estone" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Persiano" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finlandese" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Francese" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Ebraico" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" -msgstr "" +msgstr "Hindi" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Ungherese" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italiano" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Giapponese" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Coreano" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" -msgstr "" +msgstr "Lettone" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Olandese" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norvegese" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polacco" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portoghese" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portoghese (Brasile)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" -msgstr "" +msgstr "Rumeno" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Russo" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" -msgstr "" +msgstr "Slovacco" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Sloveno" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Serbo" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Svedese" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thailandese" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turco" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" -msgstr "" +msgstr "Ucraino" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamita" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Cinese (Semplificato)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Cinese (Tradizionale)" #: InvenTree/magic_login.py:28 #, python-brace-format msgid "[{site_name}] Log in to the app" -msgstr "" +msgstr "[{site_name}] Accedi all'app" #: InvenTree/magic_login.py:38 InvenTree/serializers.py:415 #: company/models.py:136 company/templates/company/company_base.html:138 #: templates/InvenTree/settings/user.html:49 #: templates/js/translated/company.js:677 msgid "Email" -msgstr "" +msgstr "Email" #: InvenTree/models.py:105 msgid "Error running plugin validation" -msgstr "" +msgstr "Errore nell'eseguire la convalida del plugin" #: InvenTree/models.py:174 msgid "Metadata must be a python dict object" @@ -403,9 +414,9 @@ msgstr "Nomi duplicati non possono esistere sotto lo stesso genitore" msgid "Invalid choice" msgstr "Scelta non valida" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Scelta non valida" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Nome" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Nome" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Descrizione" @@ -464,8 +475,8 @@ msgstr "Descrizione" msgid "Description (optional)" msgstr "Descrizione (opzionale)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Percorso" @@ -501,12 +512,12 @@ msgstr "Errore del server" msgid "An error has been logged by the server." msgstr "Un errore è stato loggato dal server." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Deve essere un numero valido" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -526,7 +537,7 @@ msgstr "Nome" #: InvenTree/serializers.py:409 msgid "First name of the user" -msgstr "" +msgstr "Nome dell'utente" #: InvenTree/serializers.py:412 templates/InvenTree/settings/user.html:41 msgid "Last Name" @@ -534,31 +545,31 @@ msgstr "Cognome" #: InvenTree/serializers.py:412 msgid "Last name of the user" -msgstr "" +msgstr "Cognome dell'utente" #: InvenTree/serializers.py:415 msgid "Email address of the user" -msgstr "" +msgstr "Indirizzo email dell'utente" #: InvenTree/serializers.py:439 msgid "Staff" -msgstr "" +msgstr "Staff" #: InvenTree/serializers.py:439 msgid "Does this user have staff permissions" -msgstr "" +msgstr "Questo utente ha i permessi dello staff" #: InvenTree/serializers.py:442 msgid "Superuser" -msgstr "" +msgstr "Superuser" #: InvenTree/serializers.py:442 msgid "Is this user a superuser" -msgstr "" +msgstr "Questo utente è un superutente" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -571,7 +582,7 @@ msgstr "Attivo" #: InvenTree/serializers.py:445 msgid "Is this user account active" -msgstr "" +msgstr "Questo account utente è attivo" #: InvenTree/serializers.py:463 msgid "You do not have permission to change this user role." @@ -583,21 +594,21 @@ msgstr "Solo i superutenti possono creare nuovi utenti" #: InvenTree/serializers.py:494 msgid "Your account has been created." -msgstr "" +msgstr "Il tuo account è stato creato." #: InvenTree/serializers.py:496 msgid "Please use the password reset function to login" -msgstr "" +msgstr "Si prega di utilizzare la funzione di reset password per accedere" #: InvenTree/serializers.py:503 msgid "Welcome to InvenTree" -msgstr "" +msgstr "Benvenuto in InvenTree" #: InvenTree/serializers.py:561 msgid "Invalid value" msgstr "Valore non valido" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "File dati" @@ -651,7 +662,7 @@ msgstr "URL del file immagine remota" msgid "Downloading images from remote URL is not enabled" msgstr "Il download delle immagini da URL remoto non è abilitato" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Controllo in background non riuscito" @@ -711,48 +722,48 @@ msgstr "Informazioni sistema" msgid "About InvenTree" msgstr "Informazioni Su InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "La produzione deve essere annullata prima di poter essere eliminata" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Consumabile" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Opzionale" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Monitorato" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Allocato" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Disponibile" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Ordine di Produzione" @@ -778,72 +789,72 @@ msgstr "Ordine di Produzione" msgid "Build Orders" msgstr "Ordini di Produzione" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" -msgstr "" +msgstr "Assembly BOM non è stato convalidato" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" -msgstr "" +msgstr "L'ordine di generazione non può essere creato per una parte inattiva" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" -msgstr "" +msgstr "L'ordine di compilazione non può essere creato per una parte sbloccata" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Scelta non valida per la produzione genitore" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" -msgstr "" +msgstr "L'utente o il gruppo responsabile deve essere specificato" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "L'ordine di costruzione della parte non può essere cambiata" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Riferimento Ordine Di Produzione" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Riferimento" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Breve descrizione della build (facoltativo)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Produzione Genitore" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Ordine di produzione a cui questa produzione viene assegnata" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Ordine di produzione a cui questa produzione viene assegnata" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Articolo" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Selezionare parte da produrre" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Numero di riferimento ordine di vendita" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Ordine di vendita a cui questa produzione viene assegnata" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Posizione Di Origine" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Seleziona la posizione da cui prelevare la giacenza (lasciare vuoto per prelevare da qualsiasi posizione di magazzino)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Posizione Della Destinazione" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Seleziona il luogo in cui gli articoli completati saranno immagazzinati" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Quantità Produzione" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Numero di articoli da costruire" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Articoli completati" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Numero di articoli di magazzino che sono stati completati" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Stato Produzione" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Codice stato di produzione" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Codice Lotto" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Codice del lotto per questa produzione" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Data di creazione" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Data completamento obiettivo" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Data di completamento della produzione. Dopo tale data la produzione sarà in ritardo." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Data di completamento" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "Completato da" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Rilasciato da" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Utente che ha emesso questo ordine di costruzione" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Responsabile" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Utente o gruppo responsabile di questo ordine di produzione" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Collegamento esterno" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Link a URL esterno" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Priorità di produzione" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Priorità di questo ordine di produzione" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Priorità di questo ordine di produzione" msgid "Project Code" msgstr "Codice del progetto" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Codice del progetto per questo ordine di produzione" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "L'ordine di produzione {build} è stato completato" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "L'ordine di produzione è stato completato" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Nessun output di produzione specificato" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "La produzione è stata completata" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "L'output della produzione non corrisponde all'ordine di compilazione" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "La quantità deve essere maggiore di zero" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "La quantità non può essere maggiore della quantità in uscita" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Crea oggetto" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Crea oggetto" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Quantità" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Quantità richiesta per l'ordine di costruzione" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "L'elemento di compilazione deve specificare un output poiché la parte principale è contrassegnata come rintracciabile" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "La quantità assegnata ({q}) non deve essere maggiore della quantità disponibile ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "L'articolo in giacenza è sovrallocato" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "La quantità di assegnazione deve essere maggiore di zero" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "La quantità deve essere 1 per lo stock serializzato" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "L'articolo in stock selezionato non corrisponde alla voce nella BOM" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Articoli in magazzino" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Origine giacenza articolo" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Quantità di magazzino da assegnare per la produzione" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Installa in" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Destinazione articolo in giacenza" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Nome Articolo" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Genera Output" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "L'output generato non corrisponde alla produzione principale" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "L'output non corrisponde alle parti dell'ordine di produzione" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Questa produzione è stata già completata" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Questo output non è stato completamente assegnato" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Inserisci la quantità per l'output di compilazione" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Quantità totale richiesta per articoli rintracciabili" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Quantità totale richiesta, poiché la fattura dei materiali contiene articoli rintracciabili" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Codice Seriale" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Inserisci i numeri di serie per gli output di compilazione (build option)" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Posizione" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Numeri di Serie Assegnazione automatica" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Assegna automaticamente gli articoli richiesti con i numeri di serie corrispondenti" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "I seguenti numeri di serie sono già esistenti o non sono validi" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Deve essere fornito un elenco dei risultati di produzione" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Posizione per gli output di build completati" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Stato" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Accetta Assegnazione Incompleta" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Completa l'output se le scorte non sono state interamente assegnate" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Rimuovi Output Incompleti" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Elimina gli output di produzione che non sono stati completati" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Non permesso" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Accetta come consumato da questo ordine di produzione" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Non assegnare prima di aver completato questo ordine di produzione" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Giacenza in eccesso assegnata" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Come si desidera gestire gli elementi extra giacenza assegnati all'ordine di produzione" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Alcuni articoli di magazzino sono stati assegnati in eccedenza" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Accetta Non Assegnato" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accetta che gli elementi in giacenza non sono stati completamente assegnati a questo ordine di produzione" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "La giacenza richiesta non è stata completamente assegnata" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Accetta Incompleta" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accetta che il numero richiesto di output di produzione non sia stato completato" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "La quantità di produzione richiesta non è stata completata" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "L'ordine di produzione ha output incompleti" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Linea di produzione" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Genera Output" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "L'output di produzione deve puntare alla stessa produzione" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Articolo linea di produzione" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "gli elementi degli articoli della distinta base devono puntare alla stessa parte dell'ordine di produzione" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "L'articolo deve essere disponibile" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantità disponibile ({q}) superata" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "L'output di produzione deve essere specificato per l'ubicazione delle parti tracciate" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "L'output di produzione non deve essere specificato per l'ubicazione delle parti non tracciate" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Deve essere indicata l'allocazione dell'articolo" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Posizione dello stock in cui le parti devono prelevate (lasciare vuoto per prelevare da qualsiasi luogo)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Escludi Ubicazione" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Escludi gli elementi stock da questa ubicazione selezionata" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Scorte Intercambiabili" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Gli elementi in magazzino in più sedi possono essere utilizzati in modo intercambiabile" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Sostituisci Giacenze" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Consenti l'allocazione delle parti sostitutive" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Articoli Opzionali" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Assegna gli elementi opzionali della distinta base all'ordine di produzione" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Codice articolo produttore" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "Nome Ubicazione" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "Codice Articolo" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "IPN Articolo" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Numero Seriale" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "Quantità Disponibile" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Descrizione Articolo" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Tracciabile" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Consenti Le Varianti" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Distinta base (Bom)" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "Ordinato" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Disponibilità in magazzino" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Produzione" msgid "Cancelled" msgstr "Annullato" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Mostra QR Code" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Scollega Codice a Barre" @@ -1715,14 +1786,14 @@ msgstr "Lo stock non è stato completamente assegnato a questo ordine di produzi #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Outputs Completati" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Outputs Completati" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Ordini di Vendita" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Inviato da" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Priorità" @@ -1804,8 +1875,8 @@ msgstr "Risorse di magazzino" msgid "Stock can be taken from any available location." msgstr "Lo stock può essere prelevato da qualsiasi posizione disponibile." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Destinazione" @@ -1819,11 +1890,11 @@ msgstr "Articoli Assegnati" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Lotto" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Creato" @@ -1851,13 +1922,13 @@ msgstr "Completato" msgid "Build not complete" msgstr "Build Completata" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Ordine di Produzione Subordinato" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Assegna Scorte alla Produzione" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Assegnazione Automatica" msgid "Manually allocate stock to build" msgstr "Assegna manualmente le scorte per la produzione" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Assegna Scorte" @@ -1908,15 +1979,15 @@ msgstr "Crea nuova produzione" msgid "New Build Output" msgstr "Nuova Produzione" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Produzioni Completate" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Produzioni Completate" msgid "Attachments" msgstr "Allegati" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Genera Note" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "Nuovo Ordine di Produzione" msgid "Build Order Details" msgstr "Dettagli Ordine di Produzione" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Elementi Riga" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Output Incompleti" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "giorni" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Abilita il campo revisione per l'articolo" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Schema di espressione regolare per l'articolo corrispondente IPN" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Consenti duplicati IPN" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Permetti a più articoli di condividere lo stesso IPN" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Permetti modifiche al part number interno (IPN)" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Consenti di modificare il valore del part number durante la modifica di un articolo" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Copia I Dati Della distinta base dell'articolo" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Copia i dati della Distinta Base predefinita quando duplichi un articolo" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Copia I Dati Parametro dell'articolo" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Copia i dati dei parametri di default quando si duplica un articolo" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Copia I Dati dell'Articolo Test" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Copia i dati di prova di default quando si duplica un articolo" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Copia Template Parametri Categoria" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" msgid "Template" msgstr "Modello" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Gli articoli sono modelli per impostazione predefinita" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Assemblaggio" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Gli articoli possono essere assemblate da altri componenti per impostazione predefinita" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Componente" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Gli articoli possono essere assemblati da altri componenti per impostazione predefinita" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Acquistabile" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Vendibile" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Gli articoli sono tracciabili per impostazione predefinita" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Virtuale" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Gli articoli sono virtuali per impostazione predefinita" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Mostra l'importazione nelle viste" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Mostra la procedura guidata di importazione in alcune viste articoli" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Mostra articoli correlati" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Visualizza parti correlate per ogni articolo" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Dati iniziali dello stock" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Consentire la creazione di uno stock iniziale quando si aggiunge una nuova parte" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Dati iniziali del fornitore" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Consentire la creazione dei dati iniziali del fornitore quando si aggiunge una nuova parte" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Formato di visualizzazione del nome articolo" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Formato per visualizzare il nome dell'articolo" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Icona predefinita Categoria Articolo" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Icona predefinita Categoria Articolo (vuoto significa nessuna icona)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Usa Prezzi Fornitore" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Includere le discontinuità di prezzo del fornitore nei calcoli generali dei prezzi" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Ignora la Cronologia Acquisti" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Cronologia dei prezzi dell'ordine di acquisto del fornitore superati con discontinuità di prezzo" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Utilizzare i prezzi degli articoli in stock" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Utilizzare i prezzi dei dati di magazzino inseriti manualmente per il calcolo dei prezzi" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Età dei prezzi degli articoli in stock" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Escludere dal calcolo dei prezzi gli articoli in giacenza più vecchi di questo numero di giorni" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Utilizza Variazione di Prezzo" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Includi la variante dei prezzi nei calcoli dei prezzi complessivi" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Solo Varianti Attive" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Utilizza solo articoli di varianti attive per calcolare i prezzi delle varianti" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Numero di giorni prima che il prezzo dell'articolo venga aggiornato automaticamente" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Prezzi interni" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Abilita prezzi interni per gli articoli" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Sovrascrivi Prezzo Interno" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Se disponibile, i prezzi interni sostituiscono i calcoli della fascia di prezzo" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Abilita stampa etichette" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Abilita la stampa di etichette dall'interfaccia web" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Etichetta Immagine DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Risoluzione DPI quando si generano file di immagine da fornire ai plugin di stampa per etichette" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Abilita Report di Stampa" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Abilita generazione di report di stampa" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Modalità Debug" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Genera report in modalità debug (output HTML)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Dimensioni pagina" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Dimensione predefinita della pagina per i report PDF" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Abilita Rapporto di Prova" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Abilita generazione di stampe di prova" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Allega Rapporto di Prova" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Quando si stampa un rapporto di prova, allegare una copia del rapporto di prova all'elemento di magazzino associato" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Seriali Unici Globali" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "I numeri di serie per gli articoli di magazzino devono essere univoci" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Auto Riempimento Numeri Seriali" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Auto riempimento numeri nel modulo" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Elimina scorte esaurite" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Modello Codice a Barre" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Modello per la generazione di codici batch predefiniti per gli elementi stock" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Scadenza giacenza" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Abilita funzionalità di scadenza della giacenza" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Vendi giacenza scaduta" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Consenti la vendita di stock scaduti" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Tempo di Scorta del Magazzino" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Numero di giorni in cui gli articoli in magazzino sono considerati obsoleti prima della scadenza" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Crea giacenza scaduta" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Permetti produzione con stock scaduto" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Controllo della proprietà della giacenza" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Abilita il controllo della proprietà sulle posizioni e gli oggetti in giacenza" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Icona Predefinita Ubicazione di Magazzino" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Icona Predefinita Ubicazione di Magazzino (vuoto significa nessuna icona)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Modello Di Riferimento Ordine Di Produzione" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Modello richiesto per generare il campo di riferimento ordine di produzione" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Modello Di Riferimento Ordine Di Vendita" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Modello richiesto per generare il campo di riferimento ordine di vendita" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Spedizione Predefinita Ordine Di Vendita" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Abilita la creazione di spedizioni predefinite con ordini di vendita" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Modifica Ordini Di Vendita Completati" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Consenti la modifica degli ordini di vendita dopo che sono stati spediti o completati" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Modello di Riferimento Ordine D'Acquisto" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Modello richiesto per generare il campo di riferimento ordine di acquisto" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Modifica Ordini Di Acquisto Completati" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Consenti la modifica degli ordini di acquisto dopo che sono stati spediti o completati" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Abilita password dimenticata" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Abilita la funzione password dimenticata nelle pagine di accesso" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Abilita registrazione" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Abilita auto-registrazione per gli utenti nelle pagine di accesso" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "SSO abilitato" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "Abilita SSO nelle pagine di accesso" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "Abilita registrazione SSO" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Abilita l'auto-registrazione tramite SSO per gli utenti nelle pagine di accesso" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Email richiesta" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Richiedi all'utente di fornire una email al momento dell'iscrizione" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "Riempimento automatico degli utenti SSO" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Compila automaticamente i dettagli dell'utente dai dati dell'account SSO" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "Posta due volte" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Al momento della registrazione chiedere due volte all'utente l'indirizzo di posta elettronica" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Password due volte" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Al momento della registrazione chiedere agli utenti due volte l'inserimento della password" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Domini consentiti" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Gruppo iscrizione" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Applica MFA" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Gli utenti devono utilizzare la sicurezza a due fattori." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Controlla i plugin all'avvio" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Controlla che tutti i plugin siano installati all'avvio - abilita in ambienti contenitore" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "Abilita l'integrazione URL" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Attiva plugin per aggiungere percorsi URL" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Attiva integrazione navigazione" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Abilita i plugin per l'integrazione nella navigazione" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "Abilita l'app integrata" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Abilita plugin per aggiungere applicazioni" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Abilita integrazione pianificazione" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Abilita i plugin per eseguire le attività pianificate" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Abilita eventi integrati" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Abilita plugin per rispondere agli eventi interni" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Funzionalità Dell'Inventario" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Abilita la funzionalità d'inventario per la registrazione dei livelli di magazzino e il calcolo del valore di magazzino" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Inventario periodico automatico" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Numero di giorni tra la registrazione automatica dell'inventario (imposta 0 per disabilitare)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "I rapporti d'inventario verranno eliminati dopo il numero specificato di giorni" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Tasto impostazioni (deve essere univoco - maiuscole e minuscole" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Nascondi Articoli Inattivi" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Mostra articoli sottoscritti" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Mostra gli articoli sottoscritti nella homepage" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Mostra le categorie sottoscritte" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Mostra le categorie dei componenti sottoscritti nella homepage" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Mostra ultimi articoli" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Mostra gli ultimi articoli sulla homepage" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Mostra le distinte base che attendono la convalida sulla homepage" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Mostra le modifiche recenti alle giacenze" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Mostra le giacenze modificate di recente nella homepage" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Mostra disponibilità scarsa delle giacenze" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Mostra disponibilità scarsa degli articoli sulla homepage" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Mostra scorte esaurite" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Mostra disponibilità scarsa delle scorte degli articoli sulla homepage" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Mostra scorte necessarie" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Mostra le scorte degli articoli necessari per la produzione sulla homepage" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Mostra scorte esaurite" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Mostra gli articoli stock scaduti nella home page" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Mostra scorte obsolete" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Mostra gli elementi obsoleti esistenti sulla home page" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Mostra produzioni in attesa" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Mostra produzioni in attesa sulla homepage" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Mostra produzioni in ritardo" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Mostra produzioni in ritardo sulla home page" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Mostra ordini di produzione inevasi" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Mostra ordini di produzione inevasi sulla home page" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Mostra Ordini di Produzione in ritardo" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Mostra Ordini di Produzione in ritardo sulla home page" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Mostra Ordini di Vendita inevasi" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Mostra Ordini di Vendita inevasi sulla home page" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Mostra Ordini di Vendita in ritardo" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Mostra Ordini di Vendita in ritardo sulla home page" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Mostra Notizie" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Mostra notizie sulla home page" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Visualizzazione dell'etichetta in linea" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Stampante per etichette predefinita" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Configura quale stampante di etichette deve essere selezionata per impostazione predefinita" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Visualizzazione dell'etichetta in linea" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Cerca Articoli" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Mostra articoli della ricerca nella finestra di anteprima" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Mostra articoli del fornitore nella finestra di anteprima" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Cerca Articoli Produttore" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Mostra articoli del produttore nella finestra di anteprima" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Nascondi Articoli Inattivi" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Escludi articoli inattivi dalla finestra di anteprima della ricerca" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Cerca Categorie" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Mostra categorie articolo nella finestra di anteprima di ricerca" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Cerca Giacenze" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Mostra articoli in giacenza nella finestra di anteprima della ricerca" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Nascondi elementi non disponibili" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Escludi gli elementi stock che non sono disponibili dalla finestra di anteprima di ricerca" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Cerca Ubicazioni" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Mostra ubicazioni delle giacenze nella finestra di anteprima di ricerca" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Cerca Aziende" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Mostra le aziende nella finestra di anteprima di ricerca" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Cerca Ordini Di Produzione" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Mostra gli ordini di produzione nella finestra di anteprima di ricerca" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Cerca Ordini di Acquisto" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Mostra gli ordini di acquisto nella finestra di anteprima di ricerca" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Escludi Ordini D'Acquisto Inattivi" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Escludi ordini di acquisto inattivi dalla finestra di anteprima di ricerca" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Cerca Ordini Di Vendita" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Visualizzazione degli ordini di vendita nella finestra di anteprima della ricerca" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Escludi Ordini Di Vendita Inattivi" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Escludi ordini di vendita inattivi dalla finestra di anteprima di ricerca" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Cerca Ordini Di Reso" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Risultati Dell'Anteprima Di Ricerca" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "Numero di risultati da visualizzare in ciascuna sezione della finestra di anteprima della ricerca" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Ricerca con regex" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Mostra quantità nei moduli" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Visualizzare la quantità di pezzi disponibili in alcuni moduli" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "Il tasto Esc chiude i moduli" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "Utilizzare il tasto Esc per chiudere i moduli modali" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Barra di navigazione fissa" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "La posizione della barra di navigazione è fissata nella parte superiore dello schermo" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Formato Data" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Formato predefinito per visualizzare le date" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Programmazione Prodotto" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Mostra informazioni sulla pianificazione del prodotto" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Inventario Prodotto" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Visualizza le informazioni d'inventario dell'articolo (se la funzionalità d'inventario è abilitata)" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Lunghezza Stringa Tabella" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Utente" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "Quantità prezzo limite" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Prezzo" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "Prezzo unitario in quantità specificata" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Scadenza" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "Scadenza in cui questa notifica viene ricevuta" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "Nome per questa notifica" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "È questa notifica attiva" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Token per l'accesso" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Segreto" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Segreto condiviso per HMAC" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "ID Messaggio" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Identificatore unico per questo messaggio" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Host da cui questo messaggio è stato ricevuto" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Intestazione" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Intestazione di questo messaggio" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Contenuto" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Contenuto di questo messaggio" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "Scadenza in cui questo messaggio è stato ricevuto" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Lavorato il" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "Il lavoro su questo messaggio è terminato?" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Titolo" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Collegamento" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Pubblicato" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Autore" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Riepilogo" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Letto" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "Queste notizie sull'elemento sono state lette?" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "Queste notizie sull'elemento sono state lette?" msgid "Image" msgstr "Immagine" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "File immagine" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Allegato" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "File mancante" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Link esterno mancante" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Seleziona file da allegare" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Commento" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Codice articolo produttore" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Articolo di base" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Seleziona articolo" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Seleziona articolo" msgid "Manufacturer" msgstr "Produttore" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Seleziona Produttore" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "Codice articolo produttore (MPN)" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "URL dell'articolo del fornitore" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "Descrizione articolo costruttore" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Nome parametro" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Valore" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Valore del parametro" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Unità" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Unità parametri" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Articolo Fornitore" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Fornitore" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Seleziona fornitore" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Unità di giacenza magazzino fornitore" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Selezionare un produttore" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "URL dell'articolo del fornitore" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "Descrizione articolo fornitore" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Nota" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "costo base" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Onere minimo (ad esempio tassa di stoccaggio)" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Confezionamento" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Imballaggio del pezzo" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Quantità Confezione" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "multiplo" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Ordine multiplo" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "Quantità disponibile dal fornitore" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Disponibilità Aggiornata" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "Data dell’ultimo aggiornamento dei dati sulla disponibilità" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "Valuta predefinita utilizzata per questo fornitore" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "In magazzino" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Inattivo" @@ -4430,16 +4526,16 @@ msgstr "Scarica immagine dall'URL" msgid "Delete image" msgstr "Elimina immagine" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Cliente" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Telefono" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Rimuovi" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "Cancella articolo produttore" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Articolo interno" @@ -4638,7 +4734,7 @@ msgstr "Nessuna informazione sul produttore disponibile" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Parametri" msgid "New Parameter" msgstr "Nuovo Parametro" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "Elimina Articolo Fornitore" msgid "No supplier information available" msgstr "Nessuna informazione sul fornitore disponibile" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "Crea nuova allocazione magazzino" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Nuovo Elemento in giacenza" @@ -4762,29 +4862,33 @@ msgstr "Informazioni Prezzi" msgid "Add Price Break" msgstr "Aggiungi riduzione prezzo" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Articoli in magazzino" @@ -4822,83 +4926,91 @@ msgstr "Inviato" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "Dati" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Valido" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Sconosciuto" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Prezzo Totale" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "Nessun ordine di acquisto corrispondente trovato" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Ordine" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Ordine D'Acquisto" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "Restituisci ordine" @@ -5158,7 +5286,7 @@ msgstr "Descrizione dell'ordine (opzionale)" msgid "Select project code for this order" msgstr "Seleziona il codice del progetto per questo ordine" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Collegamento a un sito web esterno" @@ -5182,11 +5310,11 @@ msgstr "Punto di contatto per questo ordine" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Riferimento ordine" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Stato ordine d'acquisto" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Azienda da cui sono stati ordinati gli articoli" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Riferimento fornitore" @@ -5207,15 +5335,15 @@ msgstr "Codice di riferimento ordine fornitore" msgid "received by" msgstr "ricevuto da" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Data di emissione" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Data di emissione ordine" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Data ordine completato" @@ -5223,501 +5351,501 @@ msgstr "Data ordine completato" msgid "Part supplier must match PO supplier" msgstr "Il fornitore dell'articolo deve corrispondere al fornitore dell'ordine di produzione" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "La quantità deve essere un numero positivo" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Azienda da cui sono stati ordinati gli elementi" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Riferimento Cliente " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "Codice di riferimento Ordine del Cliente" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Data di spedizione" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "spedito da" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "Solo un ordine aperto può essere contrassegnato come completo" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "L'ordine non può essere completato in quanto ci sono spedizioni incomplete" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "L'ordine non può essere completato perché ci sono elementi di riga incompleti" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Quantità Elementi" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "Riferimento Linea Elemento" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Note linea elemento" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Data di destinazione per questa voce di riga (lasciare vuoto per utilizzare la data di destinazione dall'ordine)" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Contesto" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "Contesto aggiuntivo per questa voce" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Prezzo unitario" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "L'articolo del fornitore deve corrispondere al fornitore" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "eliminato" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Articolo Fornitore" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Ricevuto" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Numero di elementi ricevuti" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Prezzo di Acquisto" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Prezzo di acquisto unitario" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Dove l'Acquirente desidera che questo elemento venga immagazzinato?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "Un articolo virtuale non può essere assegnato ad un ordine di vendita" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "Solo gli articoli vendibili possono essere assegnati a un ordine di vendita" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Prezzo di Vendita" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Prezzo unitario di vendita" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Spedito" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Quantità spedita" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Data di spedizione" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Verificato Da" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Utente che ha controllato questa spedizione" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Spedizione" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Numero di spedizione" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Numero di monitoraggio" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Informazioni di monitoraggio della spedizione" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Numero Fattura" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Numero di riferimento per la fattura associata" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "La spedizione è già stata spedita" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "La spedizione non ha articoli di stock assegnati" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "L'elemento di magazzino non è stato assegnato" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Impossibile allocare l'elemento stock a una linea con un articolo diverso" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Impossibile allocare stock a una riga senza un articolo" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "La quantità di ripartizione non puo' superare la disponibilità della giacenza" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "La quantità deve essere 1 per l'elemento serializzato" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "L'ordine di vendita non corrisponde alla spedizione" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "La spedizione non corrisponde all'ordine di vendita" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Linea" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "Riferimento della spedizione ordine di vendita" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Elemento" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Seleziona elemento stock da allocare" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Inserisci la quantità assegnata alla giacenza" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "Seleziona l'elemento da restituire dal cliente" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "Data di ricezione" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "Risultati" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Elementi Riga" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "L'ordine non può essere cancellato" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "Consenti di chiudere l'ordine con elementi di riga incompleti" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "L'ordine ha elementi di riga incompleti" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "L'ordine non è aperto" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Valuta prezzo d'acquisto" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Numero Dell'articolo Interno" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "L'articolo del fornitore deve essere specificato" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "L'ordine di acquisto deve essere specificato" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "Il fornitore deve essere abbinato all'ordine d'acquisto" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "L'ordine di acquisto deve essere abbinato al fornitore" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Elemento Riga" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "L'elemento di riga non corrisponde all'ordine di acquisto" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "Inserisci il codice univoco per gli articoli in arrivo" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Inserisci i numeri di serie per gli articoli stock in arrivo" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Codice a Barre" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "Codice a barre scansionato" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Il codice a barre è già in uso" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Deve essere fornita una quantità intera per gli articoli rintracciabili" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "Gli elementi di linea devono essere forniti" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "La destinazione deve essere specificata" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "I valori dei codici a barre forniti devono essere univoci" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Valuta prezzo di vendita" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "Nessun dettaglio di spedizione fornito" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "L'elemento di riga non è associato a questo ordine" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "La quantità deve essere positiva" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Inserisci i numeri di serie da assegnare" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "La spedizione è già stata spedita" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "La spedizione non è associata con questo ordine" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "Nessuna corrispondenza trovata per i seguenti numeri di serie" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "I seguenti numeri di serie sono già assegnati" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "Duplica selezionati" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Elimina riga" @@ -6047,8 +6175,8 @@ msgstr "Riferimento Cliente" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Spedizione in sospeso" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Azioni" @@ -6143,30 +6272,21 @@ msgstr "Aggiornato {part} prezzo unitario a {price}" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "Aggiornato {part} unità prezzo a {price} e quantità a {qty}" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "Codice Articolo" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Descrizione Articolo" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "IPN - Numero di riferimento interno" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Revisione" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Parole Chiave" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "Id Categoria" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Nome Categoria" @@ -6191,11 +6311,11 @@ msgstr "Posizione Predefinita ID" msgid "Default Supplier ID" msgstr "ID Fornitore Predefinito" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Variante Di" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Scorta Minima" @@ -6203,19 +6323,19 @@ msgstr "Scorta Minima" msgid "Used In" msgstr "Utilizzato In" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "In Costruzione" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "Costo Minimo" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "Costo Massimo" @@ -6232,14 +6352,14 @@ msgstr "Nome Principale" msgid "Category Path" msgstr "Percorso Categoria" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Articoli" @@ -6256,13 +6376,13 @@ msgstr "ID Elemento Distinta Base" msgid "Parent IPN" msgstr "IPN Principale" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "Prezzo Minimo" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "Convalida l'intera Fattura dei Materiali" msgid "This option must be selected" msgstr "Questa opzione deve essere selezionata" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Categoria" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Posizione Predefinita" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Giacenze Totali" @@ -6375,753 +6504,784 @@ msgstr "Giacenze Totali" msgid "Input quantity for price calculation" msgstr "Digita la quantità per il calcolo del prezzo" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Categoria Articoli" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Categorie Articolo" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Posizione predefinita per gli articoli di questa categoria" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "Strutturale" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Le parti non possono essere assegnate direttamente a una categoria strutturale, ma possono essere assegnate a categorie subordinate." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Keywords predefinite" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "Parole chiave predefinite per gli articoli in questa categoria" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Icona" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Icona (facoltativa)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Non puoi rendere principale questa categoria di articoli perché alcuni articoli sono già assegnati!" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "Scelta non valida per l'articolo principale" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "Esiste già un elemento stock con questo numero seriale" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "Un articolo con questo Nome, IPN e Revisione esiste già." -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "Gli articoli non possono essere assegnati a categorie articolo principali!" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Nome articolo" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "È Template" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Quest'articolo è un articolo di template?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Questa parte è una variante di un altro articolo?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Categoria articolo" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "Numero di revisione o di versione" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "Dove viene normalmente immagazzinato questo articolo?" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Fornitore predefinito" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "Articolo fornitore predefinito" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "Scadenza Predefinita" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "Scadenza (in giorni) per gli articoli in giacenza di questo pezzo" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "Livello minimo di giacenza consentito" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "Unita di misura per questo articolo" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Questo articolo può essere costruito da altri articoli?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Questo articolo può essere utilizzato per costruire altri articoli?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "Questo articolo ha il tracciamento per gli elementi unici?" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "Quest'articolo può essere acquistato da fornitori esterni?" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "Questo pezzo può essere venduto ai clienti?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Quest'articolo è attivo?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "È una parte virtuale, come un prodotto software o una licenza?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "Somma di controllo Distinta Base" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "Somma di controllo immagazzinata Distinta Base" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "Distinta Base controllata da" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "Data di verifica Distinta Base" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Creazione Utente" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "Ultimo Inventario" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Vendita multipla" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "Valuta utilizzata per calcolare i prezzi" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "Costo Minimo Distinta Base" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "Costo minimo dei componenti dell'articolo" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "Costo Massimo Distinta Base" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "Costo massimo dei componenti dell'articolo" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "Importo Acquisto Minimo" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "Costo minimo di acquisto storico" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "Importo massimo acquisto" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "Costo massimo di acquisto storico" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "Prezzo Interno Minimo" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "Costo minimo basato su interruzioni di prezzo interne" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "Prezzo Interno Massimo" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "Costo massimo basato su interruzioni di prezzo interne" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "Prezzo Minimo Fornitore" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "Prezzo minimo articolo da fornitori esterni" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "Prezzo Massimo Fornitore" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "Prezzo massimo dell'articolo proveniente da fornitori esterni" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "Variazione di costo minimo" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "Costo minimo calcolato di variazione dell'articolo" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "Massima variazione di costo" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "Costo massimo calcolato di variazione dell'articolo" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "Costo minimo totale calcolato" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "Costo massimo totale calcolato" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "Prezzo Di Vendita Minimo" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "Prezzo minimo di vendita basato sulle interruzioni di prezzo" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "Prezzo Di Vendita Massimo" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "Prezzo massimo di vendita basato sulle interruzioni di prezzo" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "Costo Di Vendita Minimo" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "Prezzo storico minimo di vendita" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "Costo Di Vendita Minimo" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "Prezzo storico massimo di vendita" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "Articolo per l'inventario" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "Contatore Elemento" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "Numero di scorte individuali al momento dell'inventario" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "Totale delle scorte disponibili al momento dell'inventario" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Data" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "Data in cui è stato effettuato l'inventario" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "Note aggiuntive" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "Utente che ha eseguito questo inventario" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "Costo Minimo Scorta" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "Costo minimo stimato di magazzino a disposizione" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "Costo Massimo Scorte" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "Costo massimo stimato di magazzino a disposizione" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "File Report Inventario (generato internamente)" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "Conteggio Articolo" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "Numero di articoli oggetto d'inventario" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "Utente che ha richiesto questo report inventario" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "Il modello di prova può essere creato solo per gli articoli rintracciabili" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Nome Test" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "Inserisci un nome per la prova" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Descrizione Di Prova" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "Inserisci descrizione per questa prova" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Abilitato" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Richiesto" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "Questa prova è necessaria per passare?" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Valore richiesto" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "Questa prova richiede un valore quando si aggiunge un risultato di prova?" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "Allegato Richiesto" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "Questa prova richiede un file allegato quando si aggiunge un risultato di prova?" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "Il nome del modello del parametro deve essere univoco" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "Nome Parametro" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "Descrizione del parametro" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "Articolo principale" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "Modello Parametro" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Valore del Parametro" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Valore Predefinito" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "Valore Parametro Predefinito" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "ID articolo o nome articolo" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "Valore ID articolo univoco" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "Valore IPN articolo" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "Livello" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "Livello distinta base" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Seleziona articolo principale" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "Articolo subordinato" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "Seleziona l'articolo da utilizzare nella Distinta Base" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "Quantità Distinta Base per questo elemento Distinta Base" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "Questo elemento della Distinta Base è opzionale" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Questo elemento della Distinta Base è consumabile (non è tracciato negli ordini di produzione)" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Eccedenza" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Quantità stimata scarti di produzione (assoluta o percentuale)" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "Riferimento Elemento Distinta Base" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "Note Elemento Distinta Base" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "Codice di controllo" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "Codice di controllo Distinta Base" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "Convalidato" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Questo elemento della Distinta Base viene ereditato dalle Distinte Base per gli articoli varianti" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Consenti Le Varianti" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Gli elementi in giacenza per gli articoli varianti possono essere utilizzati per questo elemento Distinta Base" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "La quantità deve essere un valore intero per gli articoli rintracciabili" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "L'articolo subordinato deve essere specificato" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "Elemento Distinta Base Sostituito" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sostituita non può essere la stessa dell'articolo principale" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "Elemento principale Distinta Base" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "Sostituisci l'Articolo" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "Articolo 1" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "Articolo 2" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "Seleziona Prodotto Relativo" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "Non si può creare una relazione tra l'articolo e sé stesso" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "La relazione duplicata esiste già" @@ -7129,7 +7289,7 @@ msgstr "La relazione duplicata esiste già" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Valuta di acquisto di questo articolo in stock" @@ -7155,303 +7315,312 @@ msgstr "Valuta di acquisto di questo articolo in stock" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "Articolo Originale" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "Seleziona l'articolo originale da duplicare" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Copia immagine" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "Copia immagine dall'articolo originale" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "Copia Distinta Base" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "Copia fattura dei materiali dall'articolo originale" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Copia parametri" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "Copia i dati dei parametri dall'articolo originale" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "Quantità iniziale" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Specificare la quantità iniziale disponibile per questo Articolo. Se la quantità è zero, non viene aggiunta alcuna quantità." -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "Ubicazione Iniziale Magazzino" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "Specificare l'ubicazione iniziale del magazzino per questo Articolo" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "Seleziona il fornitore (o lascia vuoto per saltare)" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "Seleziona il produttore (o lascia vuoto per saltare)" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "Codice articolo Produttore" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "L'azienda selezionata non è un fornitore valido" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "L'azienda selezionata non è un produttore valido" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "L'articolo del produttore che corrisponde a questo MPN esiste già" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "L'articolo del fornitore che corrisponde a questo SKU esiste già" -#: part/serializers.py:864 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:867 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "Duplica articolo" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "Copia i dati iniziali da un altro Articolo" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "Stock iniziale" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "Crea Articolo con quantità di scorta iniziale" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "Informazioni Fornitore" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "Aggiungi le informazioni iniziali del fornitore per questo articolo" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "Copia Parametri Categoria" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "Copia i parametri dai modelli della categoria articolo selezionata" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Limitare il report d'inventario ad un articolo particolare e a eventuali articoli varianti" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Limita il report d'inventario ad una particolare categoria articolo, e a eventuali categorie secondarie" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Limita il report d'inventario ad una particolare ubicazione di magazzino, e a eventuali ubicazioni secondarie" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Genera Report" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "Genera file di report contenente dati di inventario calcolati" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "Aggiorna Articoli" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "Aggiorna gli articoli specificati con i dati calcolati di inventario" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "La funzione Inventario non è abilitata" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "Aggiorna" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "Aggiorna i prezzi per questo articolo" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "Puoi produrre" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "Seleziona l'articolo da cui copiare la distinta base" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "Rimuovi Dati Esistenti" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "Rimuovi elementi distinta base esistenti prima di copiare" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "Includi Ereditato" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "Includi gli elementi Distinta Base ereditati da prodotti template" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "Salta Righe Non Valide" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "Abilita questa opzione per saltare le righe non valide" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "Copia Articoli sostitutivi" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "Copia articoli sostitutivi quando duplichi gli elementi distinta base" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "Cancella Distinta Base esistente" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "Rimuovi elementi distinta base esistenti prima del caricamento" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "Nessuna colonna articolo specificata" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "Trovati più articoli corrispondenti" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "Nessun articolo corrispondente trovato" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "L'articolo non è indicato come componente" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "Quantità non fornita" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Quantità non valida" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "Almeno un elemento della distinta base è richiesto" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "Quantità Totale" @@ -7603,7 +7772,7 @@ msgstr "Aggiungi informazioni inventario" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "Inventario" @@ -7790,7 +7959,7 @@ msgstr "Conta articoli magazzino" msgid "Transfer part stock" msgstr "Trasferisci giacenza" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "Azioni articolo" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "L'Articolo è virtuale (non è un articolo fisico)" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "Mostra i Dettagli Articolo" @@ -7853,51 +8022,47 @@ msgstr "Assegnato agli Ordini di Produzione" msgid "Allocated to Sales Orders" msgstr "Assegnato agli Ordini di Vendita" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "Puoi produrre" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "Livello minimo di giacenza" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "Fascia di Prezzo" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Ultimo Numero Di Serie" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "Ricerca per numero seriale" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "Varianti" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Magazzino" @@ -8003,7 +8168,7 @@ msgstr "Modifica" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Ultimo aggiornamento" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Nessuna giacenza" @@ -8155,7 +8320,7 @@ msgstr "Immagine articolo non trovata" msgid "Part Pricing" msgstr "Prezzo Articolo" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Corrispondenza trovata per i dati del codice a barre" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "Il codice a barre corrisponde a un elemento esistente" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "Scorte insufficienti disponibili" @@ -8345,7 +8510,7 @@ msgstr "Fornisce supporto nativo per codici a barre" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "Nessun oggetto valido fornito nel modello" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "Il fornitore è stato eliminato" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Prezzo Unitario" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "Totale" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Numero Seriale" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "Risultati Test" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Risultato" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "Nessun risultato" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "Elementi installati" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Seriale" @@ -9127,7 +9279,7 @@ msgstr "Nome Fornitore" msgid "Customer ID" msgstr "ID Cliente" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "Installato In" @@ -9152,9 +9304,9 @@ msgstr "Revisione Necessaria" msgid "Delete on Deplete" msgstr "Elimina al esaurimento" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "Data di Scadenza" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Ubicazione magazzino" msgid "Stock Locations" msgstr "Posizioni magazzino" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Proprietario" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Seleziona Owner" @@ -9257,7 +9409,7 @@ msgstr "Seleziona Owner" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Gli elementi di magazzino non possono essere direttamente situati in un magazzino strutturale, ma possono essere situati in ubicazioni secondarie." -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "Esterno" @@ -9266,7 +9418,7 @@ msgstr "Esterno" msgid "This is an external stock location" msgstr "Si tratta di una posizione esterna al magazzino" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "Non puoi rendere strutturale questa posizione di magazzino perché alcun msgid "Stock items cannot be located into structural stock locations!" msgstr "Gli articoli di magazzino non possono essere ubicati in posizioni di magazzino strutturali!" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "Non è possibile creare un elemento di magazzino per articoli virtuali" @@ -9300,236 +9452,236 @@ msgstr "La quantità deve essere 1 per elementi con un numero di serie" msgid "Serial number cannot be set if quantity greater than 1" msgstr "Il numero di serie non può essere impostato se la quantità è maggiore di 1" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "L'elemento non può appartenere a se stesso" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "L'elemento deve avere un riferimento di costruzione se is_building=True" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "Il riferimento di costruzione non punta allo stesso oggetto dell'articolo" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Elemento di magazzino principale" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "Articolo base" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Seleziona un fornitore articolo corrispondente per questo elemento di magazzino" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "Dove si trova questo articolo di magazzino?" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "Imballaggio di questo articolo di magazzino è collocato in" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "Questo elemento è stato installato su un altro elemento?" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "Numero di serie per questo elemento" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "Codice lotto per questo elemento di magazzino" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "Quantità disponibile" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "Genera Costruzione" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "Costruisci per questo elemento di magazzino" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "Origina Ordine di Acquisto" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Ordine d'acquisto per questo articolo in magazzino" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "Destinazione Ordine di Vendita" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Data di scadenza per l'elemento di magazzino. Le scorte saranno considerate scadute dopo questa data" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "Elimina al esaurimento" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "Cancella questo Elemento di Magazzino quando la giacenza è esaurita" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "Prezzo di acquisto unitario al momento dell’acquisto" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "Convertito in articolo" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "L'articolo non è impostato come tracciabile" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "La quantità deve essere un numero intero" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "I numeri di serie devono essere numeri interi" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "La quantità non corrisponde ai numeri di serie" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Numeri di serie già esistenti" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "L'elemento di magazzino è stato assegnato a un ordine di vendita" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "L'elemento di magazzino è installato in un altro elemento" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "L'elemento di magazzino contiene altri elementi" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "L'elemento di magazzino è stato assegnato a un cliente" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "L'elemento di magazzino è attualmente in produzione" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "Il magazzino serializzato non può essere unito" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "Duplica elementi di magazzino" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "Gli elementi di magazzino devono riferirsi allo stesso articolo fornitore" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "I codici di stato dello stock devono corrispondere" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "Le giacenze non possono essere spostate perché non disponibili" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "Note d'ingresso" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "Il valore deve essere fornito per questo test" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "L'allegato deve essere caricato per questo test" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "Risultato Test" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "Test valore output" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "Risultato della prova allegato" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "Note del test" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "Il numero di serie è troppo grande" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "Elemento principale" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "Scaduto" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "Elementi secondari" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "Inserisci il numero di elementi di magazzino da serializzare" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "La quantità non deve superare la quantità disponibile ({q})" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "Inserisci i numeri di serie per i nuovi elementi" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "Posizione magazzino di destinazione" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "Note opzionali elemento" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "Numeri di serie non possono essere assegnati a questo articolo" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "Seleziona elementi di magazzino da installare" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "Aggiungi nota di transazione (opzionale)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "Elemento di magazzino non disponibile" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "L'articolo selezionato non è nella Fattura dei Materiali" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "Posizione di destinazione per gli elementi disinstallati" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "Seleziona l'articolo in cui convertire l'elemento di magazzino" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "L'articolo selezionato non è una valida opzione per la conversione" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "Posizione di destinazione per l'elemento restituito" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Sottoallocazioni" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "L'articolo deve essere vendibile" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "L'elemento è assegnato a un ordine di vendita" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "Elemento assegnato a un ordine di costruzione" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "Cliente a cui assegnare elementi di magazzino" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "L'azienda selezionata non è un cliente" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "Note sull'assegnazione delle scorte" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "Deve essere fornito un elenco degli elementi di magazzino" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "Note di fusione di magazzino" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "Consenti fornitori non corrispondenti" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "Consenti di unire gli elementi di magazzino che hanno fornitori diversi" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "Consenti stato non corrispondente" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "Consenti di unire gli elementi di magazzino con diversi codici di stato" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "Devono essere riforniti almeno due elementi in magazzino" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "Valore di chiave primaria StockItem" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "Note sugli spostamenti di magazzino" @@ -9824,7 +9971,7 @@ msgstr "In quarantena" msgid "Legacy stock tracking entry" msgstr "Voce di tracciamento stock preesistente" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Elemento stock creato" @@ -9880,7 +10027,7 @@ msgstr "Diviso dall'elemento genitore" msgid "Split child item" msgstr "Dividi elemento figlio" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Elemento stock raggruppato" @@ -9900,7 +10047,7 @@ msgstr "Build order output completato" msgid "Build order output rejected" msgstr "Ordine di costruzione rifiutato" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Impegnato dall'ordine di costruzione" @@ -9961,7 +10108,7 @@ msgstr "Note Elemento di magazzino" msgid "Installed Stock Items" msgstr "Elementi di magazzino installati" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "Installa Elemento Magazzino" @@ -9969,7 +10116,7 @@ msgstr "Installa Elemento Magazzino" msgid "Delete all test results for this stock item" msgstr "Elimina tutti i risultati del test per questo elemento di magazzino" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "Azioni adeguamento giacenza" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Conta giacenza" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "Aggiungi giacenza" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "Rimuovi giacenza" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "Serializza magazzino" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Trasferisci giacenza" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "Assegna al cliente" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "Cancella elemento di magazzino" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Produzione" @@ -10114,12 +10261,8 @@ msgstr "pagina successiva" msgid "Navigate to next serial number" msgstr "Vai al numero di serie successivo" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "Quantità Disponibile" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Nessuna posizione impostata" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "Nessun inventario eseguito" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Nuova Posizione" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "Impostazioni articolo" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "Importa Articolo" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "Importa Articolo" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Elimina" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Conferma l'indirizzo e-mail" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Si prega di confermare che %(email)s è un indirizzo email per l'utente %(user_display)s." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Conferma" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "I seguenti articoli sono pochi nel magazzino richiesto" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Quantità richiesta" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "Clicca il seguente link per visualizzare questo articolo" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "Quantità minima" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Scansiona codice a barre" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Esistono errori nel modulo" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Aggiungi" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po index 7517b9cbac..87cd537ffb 100644 --- a/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -56,26 +56,29 @@ msgstr "エラーの詳細は管理者パネルで確認できます" msgid "Enter date" msgstr "日付を入力する" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "メモ" @@ -132,7 +135,7 @@ msgstr "指定されたメールドメインは承認されていません。" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "数量コードが無効です" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "指定されたURLは有効な画像ファイルではありません" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 +msgid "Bulgarian" +msgstr "" + +#: InvenTree/locales.py:20 msgid "Czech" msgstr "チェコ語" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "ドイツ語" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "ギリシャ語" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "英語" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "スペイン語" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "スペイン語(メキシコ)" -#: InvenTree/locales.py:26 -msgid "Farsi / Persian" -msgstr "" - #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 +msgid "Farsi / Persian" +msgstr "" + +#: InvenTree/locales.py:29 +msgid "Finnish" +msgstr "" + +#: InvenTree/locales.py:30 msgid "French" msgstr "フランス語" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "ヘブライ語" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "ヒンディー語" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "ハンガリー語" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "イタリア語" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "日本語" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "韓国語" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "オランダ語" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "ノルウェー語" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "ポーランド語" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "ポルトガル語" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "ポルトガル語 (ブラジル)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "ロシア語" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "スロベニア語" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "スウェーデン語" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "タイ語" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "トルコ語" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "ベトナム語" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "無効な選択です" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "無効な選択です" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "お名前" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "お名前" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "説明" @@ -464,8 +475,8 @@ msgstr "説明" msgid "Description (optional)" msgstr "説明 (オプション)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "有効な数字でなければなりません" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "無効な値です。" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "データファイル" @@ -651,7 +662,7 @@ msgstr "外部画像ファイルのURL" msgid "Downloading images from remote URL is not enabled" msgstr "外部URLからの画像ダウンロードは許可されていません" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "バックグラウンドワーカーのチェックに失敗しました" @@ -711,48 +722,48 @@ msgstr "システム情報" msgid "About InvenTree" msgstr "InvenTree について" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "オプション" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "組立注文" @@ -778,72 +789,72 @@ msgstr "組立注文" msgid "Build Orders" msgstr "組立注文" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "パーツ" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "組立状況" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "作成日時" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "外部リンク" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "外部 サイト へのリンク" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "組立優先度" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "数量" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "在庫商品" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "シリアル番号" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "ステータス" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "組立ライン" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "シリアル番号" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "追跡可能" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "生産" msgid "Cancelled" msgstr "キャンセル済" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "テンプレート" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "パーツはデフォルトのテンプレートです" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "アセンブリ" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "コンポーネント" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "パーツはデフォルトでサブコンポーネントとして使用できます" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "購入可能" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "パーツはデフォルトで購入可能です" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "販売可能" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "パーツはデフォルトで販売可能です" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "パーツはデフォルトで追跡可能です" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "デバッグモード" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "シリアル番号を自動入力" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "メールアドレスは必須です" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "非アクティブな部品を非表示" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "購読中の部品を表示" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "購読中のカテゴリを表示" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "ユーザー" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "メッセージ ID:" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "リンク" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "添付ファイル" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "ファイルがありません" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "外部リンクが見つかりません。" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "添付ファイルを選択" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "コメント:" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "メーカー・パーツ" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "製造元" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "仕入先" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "顧客" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "メーカー・パーツを削除" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "内部パーツ" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "パラメータ" msgid "New Parameter" msgstr "新規パラメータ" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "在庫商品" @@ -4822,83 +4926,91 @@ msgstr "設置済" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "外部ページへのリンク" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "購入金額" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "発送済み" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "割り当てるシリアル番号を入力" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "キーワード" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "カテゴリID" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "カテゴリ名" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "パーツ" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "カテゴリ" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "パーツカテゴリ" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "パーツカテゴリ" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "パーツカテゴリ" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "カテゴリを選択" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "シリアル番号で検索" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "在庫" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "在庫切れ" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "シリアル番号" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "シリアル番号が既に存在します" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "シリアル番号が大きすぎます" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "期限切れ" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "パーツは販売可能でなければなりません" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "在庫商品を作成しました" @@ -9880,7 +10027,7 @@ msgstr "親アイテムから分割する" msgid "Split child item" msgstr "子項目を分割" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "商品在庫をマージしました" @@ -9900,7 +10047,7 @@ msgstr "組立注文の出力が完了しました" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "組立" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "確認" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "このパーツを表示するには、次のリンクをクリックしてください" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "最小在庫" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po index 4ac93aac38..e31d462652 100644 --- a/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po index 1f64729506..74db2b7b39 100644 --- a/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/lv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:57\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Latvian\n" "Language: lv_LV\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "Ievadiet datumu" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Piezīmes" @@ -132,7 +135,7 @@ msgstr "Norādītais e-pasta domēns nav apstiprināts." msgid "Registration is disabled." msgstr "Reģistrācija ir izslēgta." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Norādītais daudzums nav derīgs" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Norādītajā URL nav derīgs attēla fails" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgāru" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Čehu" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Dāņu" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Vācu" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Grieķu" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Angļu" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spāņu" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spāņu (Meksikāņu)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Persiešu" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Somu" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po index 0656e2d101..24a42c0386 100644 --- a/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -56,26 +56,29 @@ msgstr "Error details kunnen worden gevonden in het admin scherm" msgid "Enter date" msgstr "Voer datum in" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Opmerkingen" @@ -132,7 +135,7 @@ msgstr "Het ingevoerde e-maildomein is niet goedgekeurd." msgid "Registration is disabled." msgstr "Registratie is uitgeschakeld." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Ongeldige hoeveelheid ingevoerd" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Opgegeven URL is geen geldig afbeeldingsbestand" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgaars" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Tsjechisch" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Deens" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Duits" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Grieks" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Engels" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spaans" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spaans (Mexicaans)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Perzisch" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Fins" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Frans" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebreeuws" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Hongaars" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italiaans" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japans" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Koreaans" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Nederlands" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Noors" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Pools" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugees" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugees (Braziliaans)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Russisch" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Sloveens" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Servisch" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Zweeds" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thais" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turks" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamees" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Chinees (vereenvoudigd)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Chinees (traditioneel)" @@ -403,9 +414,9 @@ msgstr "Dubbele namen kunnen niet bestaan onder hetzelfde bovenliggende object" msgid "Invalid choice" msgstr "Ongeldige keuze" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Ongeldige keuze" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Naam" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Naam" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Omschrijving" @@ -464,8 +475,8 @@ msgstr "Omschrijving" msgid "Description (optional)" msgstr "Omschrijving (optioneel)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Pad" @@ -501,12 +512,12 @@ msgstr "Serverfout" msgid "An error has been logged by the server." msgstr "Er is een fout gelogd door de server." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Moet een geldig nummer zijn" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "Ongeldige waarde" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Data bestand" @@ -651,7 +662,7 @@ msgstr "URL van extern afbeeldingsbestand" msgid "Downloading images from remote URL is not enabled" msgstr "Afbeeldingen van externe URL downloaden is niet ingeschakeld" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Achtergrondwerker check is gefaald" @@ -711,48 +722,48 @@ msgstr "Systeeminformatie" msgid "About InvenTree" msgstr "Over InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Productie moet geannuleerd worden voordat het kan worden verwijderd" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Verbruiksartikelen" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Optioneel" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Gevolgd" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Toegewezen" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Beschikbaar" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Productieorder" @@ -778,72 +789,72 @@ msgstr "Productieorder" msgid "Build Orders" msgstr "Productieorders" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Ongeldige keuze voor bovenliggende productie" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Productieorderreferentie" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referentie" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Korte beschrijving van de build (optioneel)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Bovenliggende Productie" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Productieorder waar deze productie aan is toegewezen" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Productieorder waar deze productie aan is toegewezen" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Onderdeel" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Selecteer onderdeel om te produceren" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Verkooporder Referentie" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Verkooporder waar deze productie aan is toegewezen" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Bronlocatie" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Selecteer de locatie waar de voorraad van de productie vandaan moet komen (laat leeg om vanaf elke standaard locatie te nemen)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Bestemmings Locatie" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Selecteer locatie waar de voltooide items zullen worden opgeslagen" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Productiehoeveelheid" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Aantal voorraaditems om te produceren" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Voltooide voorraadartikelen" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Aantal voorraadartikelen die zijn voltooid" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Productiestatus" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Productiestatuscode" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Batchcode" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Batchcode voor deze productieuitvoer" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Aanmaakdatum" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Verwachte opleveringsdatum" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Doeldatum voor productie voltooiing. Productie zal achterstallig zijn na deze datum." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Opleveringsdatum" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "voltooid door" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Uitgegeven door" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Gebruiker die de productieorder heeft gegeven" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Verantwoordelijke" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Gebruiker of groep verantwoordelijk voor deze bouwopdracht" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Externe Link" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Link naar externe URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Bouw prioriteit" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Prioriteit van deze bouwopdracht" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Prioriteit van deze bouwopdracht" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Project code voor deze build order" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Productieorder {build} is voltooid" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Een productieorder is voltooid" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Geen productie uitvoer opgegeven" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Productie uitvoer is al voltooid" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Productuitvoer komt niet overeen met de Productieorder" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Hoeveelheid moet groter zijn dan nul" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Hoeveelheid kan niet groter zijn dan aantal" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Bouw object" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Bouw object" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Hoeveelheid" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Vereiste hoeveelheid voor bouwopdracht" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Productieartikel moet een productieuitvoer specificeren, omdat het hoofdonderdeel gemarkeerd is als traceerbaar" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Toegewezen hoeveelheid ({q}) mag de beschikbare voorraad ({a}) niet overschrijden" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Voorraad item is te veel toegewezen" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Toewijzing hoeveelheid moet groter zijn dan nul" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Geselecteerde voorraadartikelen komen niet overeen met de BOM-regel" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Voorraadartikel" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Bron voorraadartikel" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Voorraad hoeveelheid toe te wijzen aan productie" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Installeren in" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Bestemming voorraadartikel" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Onderdeel naam" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Productieuitvoer" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Productieuitvoer komt niet overeen met de bovenliggende productie" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Uitvoeronderdeel komt niet overeen met productieorderonderdeel" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Deze productieuitvoer is al voltooid" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Deze productieuitvoer is niet volledig toegewezen" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Voer hoeveelheid in voor productie uitvoer" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Hoeveelheid als geheel getal vereist voor traceerbare onderdelen" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Serienummers" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Voer serienummers in voor productieuitvoeren" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Locatie" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Serienummers automatisch toewijzen" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Vereiste artikelen automatisch toewijzen met overeenkomende serienummers" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "De volgende serienummers bestaan al of zijn ongeldig" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Een lijst van productieuitvoeren moet worden verstrekt" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Voorraadlocatie voor geannuleerde outputs" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Toewijzingen weggooien" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Verwijder alle voorraadtoewijzingen voor geannuleerde outputs" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Reden voor annulering van bouworder(s)" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Locatie van voltooide productieuitvoeren" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Incomplete Toewijzing Accepteren" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Voltooi de uitvoer als de voorraad niet volledig is toegewezen" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Verwijder Incomplete Uitvoeren" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Verwijder alle productieuitvoeren die niet zijn voltooid" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Niet toegestaan" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Accepteer zoals geconsumeerd onder deze bouwopdracht" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "De-alloceren voordat deze bouwopdracht voltooid wordt" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Overgealloceerde voorraad" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Hoe wilt u omgaan met extra voorraaditems toegewezen aan de bouworder" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Sommige voorraadartikelen zijn overalloceerd" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Accepteer Niet-toegewezen" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepteer dat voorraadartikelen niet volledig zijn toegewezen aan deze productieorder" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Vereiste voorraad is niet volledig toegewezen" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Accepteer Onvolledig" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepteer dat het vereist aantal productieuitvoeren niet is voltooid" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Vereiste productiehoeveelheid is voltooid" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Productieorder heeft onvolledige uitvoeren" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Productielijn" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Productieuitvoer" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Productieuitvoer moet naar dezelfde productie wijzen" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Bouw lijn-item" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part moet naar hetzelfde onderdeel wijzen als de productieorder" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Artikel moet op voorraad zijn" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Beschikbare hoeveelheid ({q}) overschreden" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Productieuitvoer moet worden opgegeven voor de toewijzing van gevolgde onderdelen" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Productieuitvoer kan niet worden gespecificeerd voor de toewijzing van niet gevolgde onderdelen" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Allocaties voor artikelen moeten worden opgegeven" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Voorraadlocatie waar onderdelen afkomstig zijn (laat leeg om van elke locatie te nemen)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Locatie uitsluiten" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Voorraadartikelen van deze geselecteerde locatie uitsluiten" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Uitwisselbare voorraad" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Voorraadartikelen op meerdere locaties kunnen uitwisselbaar worden gebruikt" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Vervangende Voorraad" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Toewijzing van vervangende onderdelen toestaan" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Optionele Items" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Alloceer optionele BOM items om bestelling te bouwen" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Fabrikant artikel nummer (MPN)" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "Onderdeel-id" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Serienummer" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Onderdeel omschrijving" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Volgbaar" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Stuklijstartikel" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "In bestelling" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Beschikbare Voorraad" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Productie" msgid "Cancelled" msgstr "Geannuleerd" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "QR-code weergeven" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Barcode loskoppelen" @@ -1715,14 +1786,14 @@ msgstr "Voorraad is niet volledig toegewezen aan deze productieorder" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Voltooide Uitvoeren" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Voltooide Uitvoeren" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Verkooporder" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Uitgegeven door" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Prioriteit" @@ -1804,8 +1875,8 @@ msgstr "Voorraadbron" msgid "Stock can be taken from any available location." msgstr "Voorraad kan worden genomen van elke beschikbare locatie." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Bestemming" @@ -1819,11 +1890,11 @@ msgstr "Toegewezen Onderdelen" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Gecreëerd" @@ -1851,13 +1922,13 @@ msgstr "Voltooid" msgid "Build not complete" msgstr "Productie niet compleet" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Onderliggende Productieorders" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Voorraad toewijzen aan Product" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Automatisch Toewijzen" msgid "Manually allocate stock to build" msgstr "Handmatig voorraad toewijzen aan productie" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Voorraad Toewijzen" @@ -1908,15 +1979,15 @@ msgstr "Nieuwe productieuitvoer aanmaken" msgid "New Build Output" msgstr "Nieuwe Productieuitvoer" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Verbruikte voorraad" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Voltooide Productieuitvoeren" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Voltooide Productieuitvoeren" msgid "Attachments" msgstr "Bijlagen" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Productie notities" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "Nieuwe Productieorder" msgid "Build Order Details" msgstr "Productieorderdetails" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Artikelen" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Onvolledige Productieuitvoeren" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "dagen" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Revisieveld voor onderdeel inschakelen" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Regulier expressiepatroon voor het overeenkomende Onderdeel IPN" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Duplicaat IPN toestaan" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Toestaan dat meerdere onderdelen dezelfde IPN gebruiken" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Bewerken IPN toestaan" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Sta het wijzigen van de IPN toe tijdens het bewerken van een onderdeel" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Kopieer Onderdeel Stuklijstgegevens" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Kopieer standaard stuklijstgegevens bij het dupliceren van een onderdeel" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Kopieer Onderdeel Parametergegevens" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Parametergegevens standaard kopiëren bij het dupliceren van een onderdeel" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Kopieer Onderdeel Testdata" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Testdata standaard kopiëren bij het dupliceren van een onderdeel" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Kopiëer Categorieparameter Sjablonen" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel" msgid "Template" msgstr "Sjabloon" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Onderdelen zijn standaard sjablonen" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Samenstelling" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Onderdelen kunnen standaard vanuit andere componenten worden samengesteld" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Onderdelen kunnen standaard worden gebruikt als subcomponenten" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Koopbaar" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Onderdelen kunnen standaard gekocht worden" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Verkoopbaar" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Onderdelen kunnen standaard verkocht worden" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Onderdelen kunnen standaard gevolgd worden" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Virtueel" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Onderdelen zijn standaard virtueel" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Toon Import in Weergaven" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Toon de importwizard in sommige onderdelenweergaven" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Verwante onderdelen tonen" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Verwante onderdelen voor een onderdeel tonen" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Initiële voorraadgegevens" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Aanmaken van eerste voorraad toestaan bij het toevoegen van een nieuw onderdeel" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Initiële leveranciergegevens" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Aanmaken van eerste leveranciersgegevens toestaan bij het toevoegen van een nieuw onderdeel" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Onderdelennaam Weergaveopmaak" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Opmaak om de onderdeelnaam weer te geven" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Standaardicoon voor onderdeel catagorie" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Standaardicoon voor onderdeel catagorie (leeg betekent geen pictogram)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Forceer Parameter Eenheden" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "Als er eenheden worden opgegeven, moeten parameterwaarden overeenkomen met de opgegeven eenheden" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Minimaal aantal prijs decimalen" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Minimaal aantal decimalen om weer te geven bij het weergeven van prijsgegevens" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "Maximum prijs decimalen" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maximum aantal decimalen om weer te geven bij het weergeven van prijsgegevens" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Gebruik leveranciersprijzen" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Prijsvoordelen leveranciers opnemen in de totale prijsberekening" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Aankoopgeschiedenis overschrijven" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historische order prijzen overschrijven de prijzen van de leverancier" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Gebruik voorraaditem prijzen" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Gebruik prijzen van handmatig ingevoerde voorraadgegevens voor prijsberekeningen" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Voorraad artikelprijs leeftijd" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Voorraaditems ouder dan dit aantal dagen uitsluiten van prijsberekeningen" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Gebruik variantprijzen" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Variantenprijzen opnemen in de totale prijsberekening" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Alleen actieve varianten" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Gebruik alleen actieve variantonderdelen voor het berekenen van variantprijzen" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Prijzen Herbouw interval" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Aantal dagen voordat de prijzen voor onderdelen automatisch worden bijgewerkt" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Interne Prijzen" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Inschakelen van interne prijzen voor onderdelen" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Interne prijs overschrijven" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Indien beschikbaar, interne prijzen overschrijven berekeningen van prijsbereik" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Printen van labels Inschakelen" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Printen van labels via de webinterface inschakelen" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Label Afbeelding DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI resolutie bij het genereren van afbeelginsbestanden voor label printer plugins" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Activeer Rapportages" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Activeer het genereren van rapporten" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Foutopsporingsmodus" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Rapporten genereren in debug modus (HTML uitvoer)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Paginagrootte" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Standaard paginagrootte voor PDF rapporten" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Activeer Testrapporten" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Activeer het genereren van testrapporten" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Testrapporten Toevoegen" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Bij het afdrukken van een Testrapport, voeg een kopie van het Testrapport toe aan het bijbehorende Voorraadartikel" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Globaal unieke serienummers" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "Serienummers voor voorraaditems moeten globaal uniek zijn" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Serienummers automatisch invullen" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Automatisch invullen van serienummer in formulieren" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Verwijder uitgeputte voorraad" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Batchcode Sjabloon" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Sjabloon voor het genereren van standaard batchcodes voor voorraadartikelen" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Verlopen Voorraad" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Verlopen voorraad functionaliteit inschakelen" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Verkoop Verlopen Voorraad" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Verkoop verlopen voorraad toestaan" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Voorraad Vervaltijd" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Aantal dagen voordat voorraadartikelen als verouderd worden beschouwd voor ze verlopen" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Produceer Verlopen Voorraad" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Sta productie met verlopen voorraad toe" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Voorraad Eigenaar Toezicht" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Eigenaarstoezicht over voorraadlocaties en items inschakelen" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Voorraadlocatie standaard icoon" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Standaard locatie pictogram (leeg betekent geen icoon)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Geïnstalleerde voorraad items weergeven" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "Geïnstalleerde voorraadartikelen in voorraadtabellen tonen" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Productieorderreferentiepatroon" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Vereist patroon voor het genereren van het Bouworderreferentieveld" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Retourorders inschakelen" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Retourorder functionaliteit inschakelen in de gebruikersinterface" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Retourorder referentie patroon" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Bewerk voltooide retourorders" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Bewerken van retourorders toestaan nadat deze zijn voltooid" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Verkooporderreferentiepatroon" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Vereist patroon voor het genereren van het Verkooporderreferentieveld" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Standaard Verzending Verkooporder" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Aanmaken standaard verzending bij verkooporders inschakelen" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Bewerk voltooide verkooporders" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Bewerken van verkooporders toestaan nadat deze zijn verzonden of voltooid" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Inkooporderreferentiepatroon" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Vereist patroon voor het genereren van het Inkooporderreferentieveld" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Bewerk voltooide verkooporders" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Bewerken van inkooporders toestaan nadat deze zijn verzonden of voltooid" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Wachtwoord vergeten functie inschakelen" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Wachtwoord vergeten functie inschakelen op de inlogpagina's" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Registratie inschakelen" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Zelfregistratie voor gebruikers op de inlogpagina's inschakelen" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "SSO inschakelen" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "SSO inschakelen op de inlogpagina's" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "Schakel gebruikersregistratie met SSO in" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Zelfregistratie voor gebruikers middels SSO op de inlogpagina's inschakelen" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "E-mailadres verplicht" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Vereis gebruiker om e-mailadres te registreren bij aanmelding" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "SSO-gebruikers automatisch invullen" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Gebruikersdetails van SSO-accountgegevens automatisch invullen" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "E-mail twee keer" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Bij inschrijving gebruikers twee keer om hun e-mail vragen" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Wachtwoord tweemaal" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Laat gebruikers twee keer om hun wachtwoord vragen tijdens het aanmelden" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Toegestane domeinen" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Inschrijven beperken tot bepaalde domeinen (komma-gescheiden, beginnend met @)" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Groep bij aanmelding" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "MFA afdwingen" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Gebruikers moeten multifactor-beveiliging gebruiken." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Controleer plugins bij het opstarten" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Controleer of alle plug-ins zijn geïnstalleerd bij het opstarten - inschakelen in container-omgevingen" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "Activeer URL-integratie" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Plugins toestaan om URL-routes toe te voegen" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Activeer navigatie integratie" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Plugins toestaan om te integreren in navigatie" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "Activeer app integratie" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Activeer plug-ins om apps toe te voegen" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Activeer planning integratie" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Activeer plugin om periodiek taken uit te voeren" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Activeer evenement integratie" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Activeer plugin om op interne evenementen te reageren" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Activeer project codes" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "Activeer project codes voor het bijhouden van projecten" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Voorraadcontrole functionaliteit" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Schakel voorraadfunctionaliteit in voor het opnemen van voorraadniveaus en het berekenen van voorraadwaarde" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "Externe locaties uitsluiten" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Voorraadartikelen op externe locaties uitsluiten van voorraadberekeningen" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Automatische Voorraadcontrole Periode" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Aantal dagen tussen automatische voorraadopname (ingesteld op nul om uit te schakelen)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "Rapport Verwijdering Interval" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Voorraadrapportage zal worden verwijderd na het opgegeven aantal dagen" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Instellingssleutel (moet uniek zijn - hoofdletter ongevoelig" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Inactieve Onderdelen Verbergen" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "Verberg inactieve delen bij items op de homepage" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Toon geabonneerde onderdelen" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Toon geabonneerde onderdelen op de homepage" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Toon geabonneerde categorieën" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Toon geabonneerde onderdeel categorieën op de startpagina" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Toon laatste onderdelen" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Toon laatste onderdelen op de startpagina" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Laat BOMs zien die wachten op validatie op de startpagina" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Toon recente voorraadwijzigingen" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Toon recent aangepaste voorraadartikelen op de startpagina" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Toon lage voorraad" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Toon lage voorraad van artikelen op de startpagina" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Toon lege voorraad" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Toon lege voorraad van artikelen op de startpagina" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Toon benodigde voorraad" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Toon benodigde voorraad van artikelen voor productie op de startpagina" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Toon verlopen voorraad" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Toon verlopen voorraad van artikelen op de startpagina" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Toon verouderde voorraad" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Toon verouderde voorraad van artikelen op de startpagina" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Toon openstaande producties" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Toon openstaande producties op de startpagina" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Toon achterstallige productie" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Toon achterstallige producties op de startpagina" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Toon uitstaande PO's" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Toon uitstaande PO's op de startpagina" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Toon achterstallige PO's" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Toon achterstallige PO's op de startpagina" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Toon uitstaande SO's" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Toon uitstaande SO's op de startpagina" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Toon achterstallige SO's" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Toon achterstallige SO's op de startpagina" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "Toon in behandeling SO verzendingen" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "Toon in behandeling zijnde SO verzendingen op de startpagina" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Nieuws tonen" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Nieuws op de startpagina weergeven" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Inline labelweergave" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "PDF-labels in browser weergeven, in plaats van als bestand te downloaden" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Standaard label printer" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Instellen welke label printer standaard moet worden geselecteerd" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Inline rapport weergeven" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "PDF-rapporten in de browser weergeven, in plaats van als bestand te downloaden" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Zoek Onderdelen" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Onderdelen weergeven in zoekscherm" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Zoek leveranciersonderdelen" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Leveranciersonderdelen weergeven in zoekscherm" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Fabrikant onderdelen zoeken" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Fabrikant onderdelen weergeven in zoekscherm" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Inactieve Onderdelen Verbergen" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Inactieve verkooporders weglaten in het zoekvenster" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Zoek categorieën" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Toon onderdeelcategorieën in zoekvenster" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Zoek in Voorraad" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Toon voorraad items in zoekvenster" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Verberg niet beschikbare voorraad items" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Voorraadartikelen die niet beschikbaar zijn niet in het zoekvenster weergeven" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Locaties doorzoeken" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Toon voorraadlocaties in zoekvenster" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Zoek bedrijven" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Toon bedrijven in zoekvenster" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Zoek Bouworders" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Toon bouworders in zoekvenster" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Inkooporders Zoeken" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Toon inkooporders in het zoekvenster" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Inactieve Inkooporders Weglaten" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Inactieve inkooporders weglaten in het zoekvenster" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Verkooporders zoeken" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Toon verkooporders in het zoekvenster" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Inactieve Verkooporders Weglaten" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Inactieve verkooporders weglaten in het zoekvenster" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Zoek retourorders" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "Toon bouworders in zoekvenster" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "Inactieve retourbestellingen weglaten" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "Inactieve retourorders uitsluiten in zoekvenster" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Zoekvoorbeeld resultaten" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "Aantal resultaten om weer te geven in elk gedeelte van het zoekvenster" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Regex zoeken" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "Schakel reguliere expressies in zoekopdrachten in" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "Hele woorden zoeken" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "Zoekopdrachten geven resultaat voor hele woord overeenkomsten" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Toon hoeveelheid in formulieren" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Hoeveelheid beschikbare onderdelen in sommige formulieren weergeven" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "Escape-toets sluit formulieren" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "Gebruik de Escape-toets om standaard formulieren te sluiten" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Vaste navigatiebalk" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "De navigatiebalk positie is gefixeerd aan de bovenkant van het scherm" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Datum formaat" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Voorkeursindeling voor weergave van datums" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Onderdeel planning" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Toon informatie voor het plannen van onderdelen" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Voorraadcontrole onderdeel" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Toon voorraadinformatie van onderdeel (als voorraadcontrole functionaliteit is ingeschakeld)" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Tabel tekenreekslengte" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "Foutrapportages ontvangen" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "Meldingen ontvangen van systeemfouten" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Gebruiker" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Prijs" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Eindpunt" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "Eindpunt waarop deze webhook wordt ontvangen" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "Naam van deze webhook" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "Is deze webhook actief" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Token voor toegang" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Geheim" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Gedeeld geheim voor HMAC" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "Bericht ID" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Koptekst" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Koptekst van dit bericht" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Berichtinhoud" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Inhoud van dit bericht" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Aan gewerkt" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Titel" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Gepubliceerd" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Samenvatting" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Gelezen" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "Afbeelding" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Afbeelding" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "Symbool" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Definitie" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Bijlage" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Ontbrekend bestand" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Externe link ontbreekt" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Bestand als bijlage selecteren" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Opmerking" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Fabrikant onderdeel" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Basis onderdeel" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Onderdeel selecteren" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Onderdeel selecteren" msgid "Manufacturer" msgstr "Fabrikant" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Fabrikant selecteren" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "URL voor externe link van het fabrikant onderdeel" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "Omschrijving onderdeel fabrikant" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Parameternaam" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Waarde" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Parameterwaarde" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Eenheden" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Parameter eenheden" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Leveranciersonderdeel" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderdeel" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Leverancier" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Leverancier selecteren" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Selecteer fabrikant onderdeel" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Opmerking" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "basisprijs" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimale kosten (bijv. voorraadkosten)" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "meerdere" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Order meerdere" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "Afbeelding downloaden van URL" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Klant" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Telefoon" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "Fabrikant onderdeel verwijderen" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Intern onderdeel" @@ -4638,7 +4734,7 @@ msgstr "Geen fabrikanten informatie beschikbaar" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "Nieuwe Parameter" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "Verwijder leveranciers onderdeel" msgid "No supplier information available" msgstr "Geen leveranciersinformatie beschikbaar" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "Nieuw voorraadartikel aanmaken" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Nieuw Voorraadartikel" @@ -4762,29 +4862,33 @@ msgstr "Prijsinformatie" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Voorraadartikelen" @@ -4822,83 +4926,91 @@ msgstr "Geplaatst" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Totaalprijs" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Inkooporder" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Link naar externe pagina" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Orderreferentie" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Inkooporder status" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Bedrijf waar de artikelen van worden besteld" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Leveranciersreferentie" @@ -5207,15 +5335,15 @@ msgstr "Order referentiecode van leverancier" msgid "received by" msgstr "ontvangen door" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Datum van uitgifte" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Order uitgegeven op datum" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Order voltooid op datum" @@ -5223,501 +5351,501 @@ msgstr "Order voltooid op datum" msgid "Part supplier must match PO supplier" msgstr "Onderdeelleverancier moet overeenkomen met de Inkooporderleverancier" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "Hoeveelheid moet een positief getal zijn" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Bedrijf waaraan de artikelen worden verkocht" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Klantreferentie " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "Klant order referentiecode" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Verzenddatum" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "verzonden door" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Bestelling kan niet worden voltooid omdat er onvolledige verzendingen aanwezig zijn" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "Order kan niet worden voltooid omdat er onvolledige artikelen aanwezig zijn" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Hoeveelheid artikelen" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "Artikelregel referentie" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Artikel notities" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "Additionele context voor deze regel" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Stukprijs" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "Leveranciersonderdeel moet overeenkomen met leverancier" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "verwijderd" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Leveranciersonderdeel" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Ontvangen" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Aantal ontvangen artikelen" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Inkoopprijs" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Aankoopprijs per stuk" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Waar wil de inkoper dat dit artikel opgeslagen wordt?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtueel onderdeel kan niet worden toegewezen aan een verkooporder" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "Alleen verkoopbare onderdelen kunnen aan een verkooporder worden toegewezen" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Verkoopprijs" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Prijs per stuk" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Verzonden" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Verzonden hoeveelheid" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Datum van verzending" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Gecontroleerd door" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Gebruiker die deze zending gecontroleerd heeft" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Zending" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Zendingsnummer" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Volgnummer" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Zending volginformatie" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Factuurnummer" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Referentienummer voor bijbehorende factuur" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Verzending is al verzonden" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "Zending heeft geen toegewezen voorraadartikelen" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "Voorraadartikel is niet toegewezen" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kan het voorraadartikel niet toewijzen aan een regel met een ander onderdeel" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Kan voorraad niet toewijzen aan een regel zonder onderdeel" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Toewijzingshoeveelheid kan niet hoger zijn dan de voorraadhoeveelheid" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Hoeveelheid moet 1 zijn voor geserialiseerd voorraadartikel" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "Verkooporder komt niet overeen met zending" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "Verzending komt niet overeen met verkooporder" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Regel" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "Verzendreferentie verkooporder" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Artikel" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Selecteer voorraadartikel om toe te wijzen" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Voer voorraadtoewijzingshoeveelheid in" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Artikelen" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "Order kan niet worden geannuleerd" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "Order is niet open" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Valuta Inkoopprijs" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Intern Onderdeelnummer" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "Leveranciersonderdeel moet worden gespecificeerd" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "Inkooporder moet worden gespecificeerd" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "De leverancier moet overeenkomen met de inkooporder" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "Inkooporder moet overeenkomen met de leverancier" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Artikel" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "Artikelregel komt niet overeen met inkooporder" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Voer serienummers in voor inkomende voorraadartikelen" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Streepjescode is al in gebruik" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Hoeveelheid als geheel getal vereist voor traceerbare onderdelen" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "Artikelen moeten worden opgegeven" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "Bestemmingslocatie moet worden opgegeven" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "Geleverde streepjescodewaarden moeten uniek zijn" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Valuta verkoopprijs" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "Geen verzenddetails opgegeven" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "Artikelregel is niet gekoppeld aan deze bestelling" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "Hoeveelheid moet positief zijn" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Voer serienummers in om toe te wijzen" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "Verzending is al verzonden" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "Zending is niet gekoppeld aan deze bestelling" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "Geen overeenkomst gevonden voor de volgende serienummers" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "De volgende serienummers zijn al toegewezen" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Rij verwijderen" @@ -6047,8 +6175,8 @@ msgstr "Klantreferentie" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Verzendingen in behandeling" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Acties" @@ -6143,30 +6272,21 @@ msgstr "{part} stukprijs bijgewerkt naar {price}" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "{part} stukprijs bijgewerkt naar {price} en aantal naar {qty}" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "Onderdeel-id" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Onderdeel omschrijving" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Onderdelen" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Standaard locatie" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Totale Voorraad" @@ -6375,753 +6504,784 @@ msgstr "Totale Voorraad" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Onderdeel Categorie" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Onderdeel Categorieën" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Standaard locatie voor onderdelen in deze categorie" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Onderdelen mogen niet rechtstreeks aan een structurele categorie worden toegewezen, maar kunnen worden toegewezen aan subcategorieën." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Onderdeel naam" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Onderdeel Categorie" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "Standaardleverancier" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "Eenheden voor dit onderdeel" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "Onderdeel voor voorraadcontrole" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Datum" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "Aantal onderdelen" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Ingeschakeld" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "De template van de parameter moet uniek zijn" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "Parameternaam" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Parameterwaarde" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "Standaard Parameter Waarde" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "Geen onderdelen geselecteerd" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Afbeelding kopiëren" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "Afbeelding kopiëren van het oorspronkelijke onderdeel" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Parameters kopiëren" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "Parameter data kopiëren van het originele onderdeel" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Ongeldige hoeveelheid" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "Toegewezen aan Productieorder" msgid "Allocated to Sales Orders" msgstr "Toegewezen aan verkooporders" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Voorraad" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "Afbeelding van onderdeel niet gevonden" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Overeenkomst gevonden voor streepjescodegegevens" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "Onvoldoende voorraad beschikbaar" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Stukprijs" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "Totaal" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Serienummer" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Voorraadlocatie" msgid "Stock Locations" msgstr "Voorraadlocaties" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "Inkooporder Bron" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Inkooporder voor dit voorraadartikel" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "Bestemming Verkooporder" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "Voorraadartikel is toegewezen aan een verkooporder" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Sublocaties" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "Artikel is toegewezen aan een verkooporder" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "Artikel is toegewezen aan een productieorder" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "In quarantaine geplaatst" msgid "Legacy stock tracking entry" msgstr "Verouderde volgcode" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Voorraaditem gemaakt" @@ -9880,7 +10027,7 @@ msgstr "Splits van bovenliggend item" msgid "Split child item" msgstr "Splits onderliggende item" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Samengevoegde voorraadartikelen" @@ -9900,7 +10047,7 @@ msgstr "Product voltooid" msgid "Build order output rejected" msgstr "Build order uitvoer afgewezen" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Verbruikt door productieorder" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Voorraad tellen" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Voorraad overzetten" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Product" @@ -10114,12 +10261,8 @@ msgstr "volgende pagina" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Geen locatie ingesteld" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Nieuwe Locatie" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Verwijderen" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "Startpagina" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Bevestigen" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "De volgende onderdelen hebben een lage vereiste voorraad" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Vereiste Hoeveelheid" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po index 9e6da5e990..30dc19509d 100644 --- a/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -56,26 +56,29 @@ msgstr "Feildetaljer kan finnes i admin-panelet" msgid "Enter date" msgstr "Oppgi dato" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Notater" @@ -132,7 +135,7 @@ msgstr "Det oppgitte e-postdomenet er ikke godkjent." msgid "Registration is disabled." msgstr "Registrering er deaktivert." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Ugyldig mengde oppgitt" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Angitt URL er ikke en gyldig bildefil" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgarsk" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Tsjekkisk" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Dansk" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Tysk" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Gresk" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Engelsk" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spansk" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spansk (Meksikansk)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Persisk" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finsk" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Fransk" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebraisk" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Ungarsk" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italiensk" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japansk" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Koreansk" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Nederlandsk" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norsk" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polsk" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugisisk" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugisisk (Brasil)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Russisk" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Slovakisk" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovensk" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Serbisk" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Svensk" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thailandsk" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Tyrkisk" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamesisk" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Kinesisk (forenklet)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Kinesisk (tradisjonell)" @@ -403,9 +414,9 @@ msgstr "Duplikatnavn kan ikke eksistere under samme overordnede" msgid "Invalid choice" msgstr "Ugyldig valg" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Ugyldig valg" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Navn" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Navn" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Beskrivelse" @@ -464,8 +475,8 @@ msgstr "Beskrivelse" msgid "Description (optional)" msgstr "Beskrivelse (valgfritt)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Sti" @@ -501,12 +512,12 @@ msgstr "Serverfeil" msgid "An error has been logged by the server." msgstr "En feil har blitt logget av serveren." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Må være et gyldig tall" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Velkommen til InvenTree" msgid "Invalid value" msgstr "Ugyldig verdi" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Datafil" @@ -651,7 +662,7 @@ msgstr "URLtil ekstern bildefil" msgid "Downloading images from remote URL is not enabled" msgstr "Nedlasting av bilder fra ekstern URL er ikke aktivert" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Sjekk av bakgrunnsarbeider mislyktes" @@ -711,48 +722,48 @@ msgstr "Systeminformasjon" msgid "About InvenTree" msgstr "Om InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Produksjonen må avbrytes før den kan slettes" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Forbruksvare" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Valgfritt" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Spores" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Tildelt" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Tilgjengelig" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Produksjonsordre" @@ -778,72 +789,72 @@ msgstr "Produksjonsordre" msgid "Build Orders" msgstr "Produksjonsordrer" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Ugyldig valg for overordnet produksjon" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Produksjonsordrens del kan ikke endres" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Produksjonsordre-referanse" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referanse" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Kort beskrivelse av produksjonen (valgfritt)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Overordnet produksjon" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Produksjonsordre som denne produksjonen er tildelt" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Produksjonsordre som denne produksjonen er tildelt" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Del" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Velg del å produsere" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Salgsordrereferanse" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Salgsordren denne produksjonen er tildelt til" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Kildeplassering" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Velg plassering å ta lagerbeholdning fra for denne produksjonen (la stå tomt for a ta fra alle lagerplasseringer)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Fullført plassering" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Velg plassering der fullførte artikler vil bli lagret" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Produksjonsmengde" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Antall lagervarer å produsere" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Fullførte artikler" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Antall lagervarer som er fullført" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Produksjonsstatus" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Produksjonsstatuskode" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Batchkode" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Batchkode for denne produksjonsartikkelen" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Opprettelsesdato" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Forventet sluttdato" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Måldato for ferdigstillelse. Produksjonen vil være forfalt etter denne datoen." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Fullført dato" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "fullført av" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Utstedt av" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Brukeren som utstedte denne produksjonsordren" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Ansvarlig" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Bruker eller gruppe ansvarlig for produksjonsordren" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Ekstern lenke" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Lenke til ekstern URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Produksjonsprioritet" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Produksjonsordrens prioritet" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Produksjonsordrens prioritet" msgid "Project Code" msgstr "Prosjektkode" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Prosjektkode for denne produksjonsordren" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Produksjonsordre {build} er fullført" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "En produksjonsordre er fullført" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Ingen produksjonsartikkel spesifisert" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Produksjonsartikkelen er allerede fullført" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Produksjonsartikkelen samsvarer ikke med produksjonsordren" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Mengden må være større enn null" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Kvantitet kan ikke være større enn utgangsantallet" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Produksjonsobjekt" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Produksjonsobjekt" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Antall" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Påkrevd antall for produksjonsordre" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Produksjonselement må spesifisere en produksjonsartikkel, da master-del er merket som sporbar" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Tildelt antall ({q}) kan ikke overstige tilgjengelig lagerbeholdning ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Lagervaren er overtildelt" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Tildelingsantall må være større enn null" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Mengden må være 1 for serialisert lagervare" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Valgt lagervare samsvarer ikke med BOM-linjen" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Lagervare" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Kildelagervare" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Lagerantall å tildele til produksjonen" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Monteres i" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Lagervare for montering" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Delnavn" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Produksjonsartikkel" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Produksjonsartikkel samsvarer ikke med overordnet produksjon" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Resultatdel samsvarer ikke med produksjonsordredel" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Denne produksjonsartikkelen er allerede fullført" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Denne produksjonsartikkelen er ikke fullt tildelt" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Angi antall for produksjonsartikkel" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Heltallsverdi kreves for sporbare deler" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Heltallsverdi kreves, da stykklisten inneholder sporbare deler" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Serienummer" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Angi serienummer for produksjonsartikler" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Plassering" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Automatisk tildeling av serienummer" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatisk tildeling av nødvendige artikler med tilsvarende serienummer" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Følgende serienummer finnes allerede eller er ugyldige" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "En liste over produksjonsartikler må oppgis" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Lagerplassering for skrotede produksjonsartikler" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Forkast tildelinger" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Forkast tildelinger fra skrotede produksjonsartikler" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Grunn for skroting av produksjonsartikler" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Plassering for ferdige produksjonsartikler" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Godta ufullstendig tildeling" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Fullfør artikler dersom lagerbeholdning ikke er fullt tildelt" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Fjern ufullstendige artikler" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Slett alle produksjonsartikler som ikke er fullført" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Ikke tillatt" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Godta som brukt av denne produksjonsordren" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Fjern tildeling før produksjonsordren fullføres" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Overtildelt lagerbeholdning" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Hvordan vil du håndtere ekstra lagervarer tildelt produksjonsordren" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Noen lagervarer har blitt overtildelt" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Godta ikke tildelt" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Godta at lagervarer ikke er fullt tildelt til denne produksjonsordren" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Nøvendig lagerbeholdning er ikke fullt tildelt" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Godta uferdig" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Godta at nødvendig antall fullførte produksjonsartikler ikke er nådd" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Nødvendig produksjonsmengde er ikke nådd" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Produksjonsordren har uferdige artikler" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Produksjonslinje" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Produksjonsartikkel" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Produksjonsartikkel må peke til samme produksjon" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Produksjonsartikkel" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part må peke på den samme delen som produksjonsordren" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Artikkelen må være på lager" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Tilgjengelig antall ({q}) overskredet" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Produksjonsartikkel må spesifiseres for tildeling av sporede deler" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Produksjonsartikkel kan ikke spesifiseres for tildeling av usporede deler" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Tildelingsartikler må oppgis" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lagerplassering hvor deler skal hentes (la stå tomt for å ta fra alle plasseringer)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Eksluderer plassering" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Ekskluder lagervarer fra denne valgte plasseringen" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Utskiftbar lagerbeholdning" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Lagervarer ved flere plasseringer kan brukes om hverandre" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Erstatning-lagerbeholdning" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Tilatt tildelling av erstatningsdeler" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Valgfrie artikler" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Tildel valgfrie BOM-artikler til produksjonsordre" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Produsentens varenummer" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "Plasseringsnavn" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "Del-ID" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "Del -IPN" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Serienummer" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "Tilgjengelig antall" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Delbeskrivelse" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Sporbar" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Tillat Varianter" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "BOM-artikkel" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "Tildelt lagerbeholdning" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "I bestilling" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "I produksjon" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Tilgjengelig lagerbeholdning" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Produksjon" msgid "Cancelled" msgstr "Kansellert" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Vis QR-kode" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Fjern strekkodekobling" @@ -1715,14 +1786,14 @@ msgstr "Lagerbeholdning er ikke fullt tildelt til denne Produksjonsordren" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Fullførte byggeresultater" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Fullførte byggeresultater" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Salgsordre" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Utstedt av" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Prioritet" @@ -1804,8 +1875,8 @@ msgstr "Lagerkilde" msgid "Stock can be taken from any available location." msgstr "Lagervare kan hentes fra alle tilgengelige plasseringer." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Destinasjon" @@ -1819,11 +1890,11 @@ msgstr "Tildelte deler" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Opprettet" @@ -1851,13 +1922,13 @@ msgstr "Fullført" msgid "Build not complete" msgstr "Produksjon ikke fullført" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Underordnede Produksjonsordrer" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Tildel Lagerbeholdning til Produksjon" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Automatisk tildeling" msgid "Manually allocate stock to build" msgstr "Manuelt tildel lagerbeholdning til produksjon" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Tildel lagerbeholdning" @@ -1908,15 +1979,15 @@ msgstr "Opprett ny produksjonsartikkel" msgid "New Build Output" msgstr "Ny Produksjonsartikkel" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Brukt lagerbeholdning" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Fullførte produksjonsartikkel" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Fullførte produksjonsartikkel" msgid "Attachments" msgstr "Vedlegg" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Produksjonsnotater" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "Tildeling fullført" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "Alle linjer er fullt tildelt" @@ -1952,6 +2023,16 @@ msgstr "Ny produksjonsordre" msgid "Build Order Details" msgstr "Produksjonsordre-detaljer" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Linjeelementer" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Ufullstendige artikler" @@ -2156,8 +2237,8 @@ msgstr "Hvor ofte valutakurser skal oppdateres (sett til null for å deaktiverer #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "dager" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Aktiver revisjonsfeltet for Del" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 +msgid "Allow Deletion from Assembly" +msgstr "" + +#: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 msgid "IPN Regex" msgstr "IPN regex" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Regulært uttrykksmønster for matching av internt delnummer" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Tilat duplikat av internt delnummer" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Tillat flere deler å dele samme interne delnummer" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Tillat redigering av internt delnummer" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Tillat endring av IPN-verdien mens du redigerer en del" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Kopier BOM-data fra del" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Kopier BOM-data som standard når du dupliserer en del" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Kopier parameterdata fra del" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Kopier parameterdata som standard ved duplisering av en del" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Kopier testdata fra del" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Kopier testdata som standard ved duplisering av en del" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Kopier designmaler for kategoriparametere" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Kopier parametermaler for kategori ved oppretting av en del" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Kopier parametermaler for kategori ved oppretting av en del" msgid "Template" msgstr "Mal" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Deler er maler som standard" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Sammenstilling" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Deler kan settes sammen fra andre komponenter som standard" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Komponent" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Deler kan bli brukt som underkomponenter som standard" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Kjøpbar" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Deler er kjøpbare som standard" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Salgbar" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Deler er salgbare som standard" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Deler er sporbare som standard" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Virtuelle" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Deler er virtuelle som standard" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Vis import i visninger" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Vis importveiviseren i noen deler visninger" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Vis relaterte deler" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Vis relaterte deler i en del" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Innledende lagerbeholdningsdata" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Tillat oppretting av innledende lagerbeholdning når en ny del opprettes" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Innledende leverandørdata" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Tillat oppretting av innledende leverandørdata når en ny del opprettes" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Visningsformat for delnavn" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Format for å vise delnavnet" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Standardikon for delkategorier" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Standardikon for delkategorier (tomt betyr ingen ikon)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Tving parameterenheter" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "Hvis det er angitt en enhet, skal parameterverdiene samsvare med de angitte enhetene" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Minimum antall desimalplasser for priser" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Minimum antall desimalplasser som skal vises når man gjengir prisdata" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "Maksimalt antall desimalplasser for priser" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Maksimalt antall desimalplasser som skal vises når man gjengir prisdata" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Bruk leverandørpriser" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Inkluder leverandørprisbrudd i beregninger av totalpriser" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Innkjøpshistorikkoverstyring" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Historiske innkjøpspriser overstyrer leverandørprisnivåer" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Bruk lagervarepriser" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Bruk priser fra manuelt innlagte lagervarer for prisberegninger" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Lagervare prisalder" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Unnta lagervarer som er eldre enn dette antall dager fra prisberegninger" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Bruk Variantpriser" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Inkluder variantpriser i beregninger av totale priser" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Kun aktive varianter" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Bruk kun aktive variantdeler til beregning av variantprising" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Intervall for rekalkulering av priser" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Antall dager før delpriser blir automatisk oppdatert" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Interne Priser" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Aktiver interne priser for deler" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Intern prisoverstyring" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Hvis tilgjengelig, overstyrer interne priser kalkulering av prisområde" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Aktiver etikettutskrift" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Aktiver utskrift av etiketter fra nettleseren" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Etikettbilde-DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI-oppløsning når når det genereres bildefiler for sending til utvidelser for etikettutskrift" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Aktiver Rapporter" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Aktiver generering av rapporter" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Feilsøkingsmodus" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Generer rapporter i feilsøkingsmodus (HTML-output)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Sidestørrelse" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Standard sidestørrelse for PDF-rapporter" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Aktiver Testrapporter" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Aktiver generering av testrapporter" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Legg ved testrapporter" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Når det skrives ut en Testrapport, legg ved en kopi av Testrapporten på den assosierte Lagervaren" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Globalt Unike Serienummer" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "Serienummer for lagervarer må være globalt unike" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Automatisk tildeling av Serienummer" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Aumatisk fyll ut serienummer i skjemaer" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Slett oppbrukt lagerbeholdning" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Batchkodemal" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Mal for generering av standard batchkoder for lagervarer" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Lagerbeholdning utløper" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Aktiver funksjonalitet for utløp av lagerbeholdning" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Selg utløpt lagerbeholdning" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Tillat salg av utgått lagerbeholdning" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Foreldet lagerbeholdning tidsintervall" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Antall dager før lagervarer er ansett som foreldet før utløp" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Produsér Utløpt Lagerbeholdning" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Tillat produksjon med utløpt lagerbeholdning" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Kontroll over eierskap av lagerbeholdning" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Aktiver eierskap over lagerplasseringer og -varer" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Lagerplassering standard ikon" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Lagerplassering standard ikon (tomt betyr ingen ikon)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Vis installerte lagervarer" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "Vis installerte lagervarer i lagertabeller" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Produksjonsordre-referansemønster" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Nødvendig mønster for å generere Produksjonsordre-referansefeltet" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Aktiver returordrer" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Aktiver returordrefunksjonalitet i brukergrensesnittet" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Returordre-referansemønster" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Rediger fullførte returordrer" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Tillat redigering av returordrer etter de er fullført" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Salgsordre-referansemønster" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Påkrevd mønster for å generere salgsordrereferansefelt" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Salgsordre standard fraktmetode" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Aktiver opprettelse av standard forsendelse med salgsordrer" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Rediger fullførte salgsordrer" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Tillat redigering av salgsordrer etter de har blitt sendt eller fullført" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Referansemønster for innkjøpsordre" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Obligatorisk mønster for generering av referansefelt for innkjøpsordre" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Rediger fullførte innkjøpsordre" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Tillat redigering av innkjøpsordre etter at de har blitt sendt eller fullført" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "Autofullfør innkjøpsordrer" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Automatisk merk innkjøpsordre som fullført når alle ordrelinjer er mottatt" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Aktiver passord glemt" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Ativer funskjon for glemt passord på innloggingssidene" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Aktiver registrering" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Aktiver egenregistrerting for brukerer på påloggingssidene" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "Aktiver SSO" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "Aktiver SSO på innloggingssidene" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "Aktiver SSO-registrering" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Aktiver selvregistrering via SSO for brukere på innloggingssiden" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "E-postadresse kreves" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Krevt at brukere angir e-post ved registrering" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "Auto-utfyll SSO-brukere" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Fyll automatisk ut brukeropplysninger fra SSO-kontodata" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "E-post to ganger" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Spør brukeren om e-post to ganger ved registrering" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Passord to ganger" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Spør brukeren om passord to ganger ved registrering" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Tillatte domener" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Begrens registrering til bestemte domener (kommaseparert, begynner med @)" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Gruppe ved registrering" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Krev MFA" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Brukere må bruke flerfaktorsikkerhet." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Sjekk utvidelser ved oppstart" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Sjekk at alle utvidelser er installert ved oppstart - aktiver i containermiljøer" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "Aktiver URL-integrasjon" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Tillat utvidelser å legge til URL-ruter" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Aktiver navigasjonsintegrasjon" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Tillat utvidelser å integrere mot navigasjon" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "Aktiver app-integrasjon" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Tillat utvidelser å legge til apper" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Aktiver tidsplanintegrasjon" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Tillat utvidelser å kjøre planlagte oppgaver" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Aktiver hendelsesintegrasjon" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Tillat utvidelser å reagere på interne hendelser" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Aktiver prosjektkoder" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "Aktiver prosjektkoder for å spore prosjekter" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Varetellingsfunksjonalitet" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Aktiver varetellingsfunksjonalitet for å registrere lagernivåer og regne ut lagerverdi" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "Ekskluder eksterne plasseringer" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Eksluder lagervarer i eksterne plasseringer fra varetellinger" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Automatisk varetellingsperiode" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Antall dager mellom automatisk varetellingsregistrering (sett til null for å deaktivere)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "Rapportslettingsintervall" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Varetellingsrapporter vil slettes etter angitt antall dager" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "Vis brukernes fulle navn" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "Vis brukernes fulle navn istedet for brukernavn" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Innstillingsnøkkel (må være unik - ufølsom for store og små bokstaver" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Skjul inaktive elementer" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "Skjul inaktive deler i resultater som vises på hjemmesiden" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Vis abonnerte deler" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Vis abonnerte deler på startsiden" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Vis abonnerte kategorier" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Vis abonnerte delkatekorier på startsiden" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Vis nyeste deler" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Vis nyeste deler på startsiden" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Vis stykklister som venter på validering på startsiden" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Vis nylige lagerendringer" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Vis nylig endrede lagervarer på startsiden" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Vis lav lagerbeholdning" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Vis lave lagervarer på startsiden" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Vis tomme lagervarer" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Vis tom lagerbeholdning på startsiden" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Vis nødvendig lagerbeholdning" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Vis lagervarer som trengs for produksjon på startsiden" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Vis utløpt lagerbeholdning" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Vis utløpte lagervarer på startsiden" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Vis foreldet lagerbeholdning" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Vis foreldet lagerbeholdning på startsiden" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Vis ventende produksjoner" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Vi ventende produksjoner på startsiden" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Vis forfalte produksjoner" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Vis forfalte produksjoner på startsiden" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Vis utestående Innkjøpsordrer" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Vis utestående Innkjøpsordrer på startsiden" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Vis forfalte Innkjøpsordrer" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Vis forfalte Innkjøpsordrer på startsiden" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Vis utestående Salgsordrer" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Vis utestående Salgsordrer på startsiden" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Vis forfalte SOer" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Vis forfalte SOer på startsiden" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "Vis ventende SO-forsendelser" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "Vis ventende SO-forsendelser på startsiden" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Vis Nyheter" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Vis nyheter på startsiden" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Innebygd etikettvisning" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "Vis PDF-etiketter i nettleseren fremfor å lastes ned som en fil" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Standard etikettskriver" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Konfigurer hvilken etikettskriver som skal være valgt som standard" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Innebygd rapportvisning" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "Vis PDF-rapporter i nettleseren fremfor å lastes ned som en fil" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Søk i Deler" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Vis deler i forhåndsvsningsvinduet for søk" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Søk i Leverandørdeler" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Vis leverandørdeler i forhåndsvisningsvinduet for søk" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Søk i Produsentdeler" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Vis produsentdeler i forhåndsvisningsvinduet for søk" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Skjul Inaktive Deler" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Ekskluder inaktive deler fra forhåndsvisningsvinduet for søk" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Søk i kategorier" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Vis delkategorier i forhåndsvisningsvinduet for søk" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Søk i lagerbeholdning" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Vis lagervarer i forhåndsvisningsvinduet for søk" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Skjul utilgjengelige Lagervarer" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Ekskluder lagervarer som ikke er tilgjengelige fra forhåndsvisningsvinduet for søk" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Søk i Plasseringer" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Vis lagerplasseringer i forhåndsvisningsvinduet for søk" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Søk i Firma" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Vis firma i forhåndsvsningsvinduet for søk" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Søk i Produksjonsordrer" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Vis produksjonsordrer i forhåndsvisningsvinduet for søk" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Søk i Innkjøpsordrer" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Vis innkjøpsordrer i forhåndsvisningsvinduet for søk" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Ekskluder inaktive Innkjøpsordrer" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Ekskluder inaktive innkjøpsordrer fra forhåndsvisningsvinduet for søk" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Søk i Salgsordrer" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Vis salgsordrer i forhåndsvisningsvinduet for søk" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Ekskluder Inaktive Salgsordrer" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Ekskluder inaktive salgsordrer fra forhåndsvisningsvinduet for søk" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Søk i Returordrer" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "Vis returordrer i forhåndsvisningsvinduet for søk" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "Ekskluder Inaktive Returordrer" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "Ekskluder inaktive returordrer fra forhåndsvisningsvinduet for søk" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Forhåndsvisning av søkeresultater" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "Antall resultater å vise i hver seksjon av søkeresultatsforhåndsvisningen" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Regex-søk" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "Aktiver regulære uttrykk i søkeord" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "Helordsøk" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "Søk returnerer resultater for treff med hele ord" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Vis antall i skjemaer" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Vis antall tilgjengelige deler i noen skjemaer" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "Escape-knappen lukker skjemaer" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "Bruk Escape-knappen for å lukke modal-skjemaer" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Fast navigasjonsbar" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "Navigasjonsbarens posisjon er fast på toppen av skjermen" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Datoformat" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Foretrukket format for å vise datoer" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Delplanlegging" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Vis delplanleggingsinformasjon" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Lagertelling for Del" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Vis lagertellingsinformasjon for del (om lagertellingsfunksjonalitet er aktivert)" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Tabellstrenglengde" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "Maksimal lengdegrense for tekst vist i tabeller" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "Motta feilrapporter" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "Motta varsler om systemfeil" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Bruker" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "Antall for prisbrudd" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Pris" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "Enhetspris på spesifisert antall" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Endepunkt" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "Endepunktet hvor denne webhooken er mottatt" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "Navn for webhooken" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "Er webhooken aktiv" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "Sjetong" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Nøkkel for tilgang" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Hemmelig" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Delt hemmlighet for HMAC" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "Melding ID" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Unik Id for denne meldingen" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Vert" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Verten denne meldingen ble mottatt fra" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Tittel" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Overskrift for denne meldingen" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Brødtekst" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Innholdet i meldingen" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "Endepunktet meldingen ble mottatt fra" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Arbeidet med" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "Var arbeidet med denne meldingen ferdig?" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Tittel" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Lenke" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Publisert" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Forfatter" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Sammendrag" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Les" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "Er dette nyhetselementet lest?" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "Er dette nyhetselementet lest?" msgid "Image" msgstr "Bilde" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Bildefil" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "Enhetsnavn må være en gyldig identifikator" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "Enhetsnavn" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "Valgfritt enhetssymbol" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Definisjon" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "Enhetsdefinisjon" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Vedlegg" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Fil mangler" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Mangler eksternlenke" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Velg fil å legge ved" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Kommentar" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "Fraktnotater for internt bruk" msgid "Link to address information (external)" msgstr "Lenke til adresseinformasjon (ekstern)" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Produsentdeler" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Basisdel" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Velg del" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Velg del" msgid "Manufacturer" msgstr "Produsent" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Velg produsent" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "URL for ekstern produsentdel-lenke" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "Produsentens delbeskrivelse" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Parameternavn" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Verdi" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Parameterverdi" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Enheter" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Parameterenheter" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Leverandørdel" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "Pakkeenhetene må være komptible med delens basisenhet" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "Pakkeenhet må være mer enn null" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "Den sammenkoblede produsentdelen må referere til samme basisdel" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Leverandør" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Velg leverandør" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Leverandørens lagerbeholdningsenhet" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Velg produsentdel" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "URL for ekstern leverandørdel-lenke" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "Leverandørens delbeskrivelse" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Notat" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "grunnkostnad" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimum betaling (f.eks. lageravgift)" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Emballasje" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Delemballasje" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Pakkeantall" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Totalt antall i en enkelt pakke. La være tom for enkeltenheter." -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "flere" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Bestill flere" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "Antall tilgjengelig fra leverandør" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Tilgjengelighet oppdatert" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "Dato for siste oppdatering av tilgjengelighetsdata" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "Standardvaluta brukt for denne leverandøren" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "På lager" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Inaktiv" @@ -4430,16 +4526,16 @@ msgstr "Last ned bilde fra URL" msgid "Delete image" msgstr "Slett bilde" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Kunde" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Fjern" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "Slett produsentdel" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Intern del" @@ -4638,7 +4734,7 @@ msgstr "Ingen produsentinformasjon tilgjengelig" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Parametere" msgid "New Parameter" msgstr "Nytt Parameter" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "Slett Leverandørdel" msgid "No supplier information available" msgstr "Ingen leverandørinformasjon tilgjengelig" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "SKU-kode" @@ -4744,7 +4844,7 @@ msgstr "Opprett ny lagervare" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Ny Lagervare" @@ -4762,29 +4862,33 @@ msgstr "Prisinformasjon" msgid "Add Price Break" msgstr "Legg til Prisbrudd" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Lagervarer" @@ -4822,83 +4926,91 @@ msgstr "Plassert" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Gyldig" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Ukjent" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Total pris" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "Ingen samsvarende innkjøpsordre funnet" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Ordre" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Innkjøpsordre" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "Returordre" @@ -5158,7 +5286,7 @@ msgstr "Ordrebeskrivelse (valgfritt)" msgid "Select project code for this order" msgstr "Velg prosjektkode for denne ordren" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Lenke til ekstern side" @@ -5182,11 +5310,11 @@ msgstr "Kontaktpunkt for denne ordren" msgid "Company address for this order" msgstr "Selskapsadresse for denne ordren" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Ordrereferanse" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Status for innkjøpsordre" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Firma som varene blir bestilt fra" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Leverandørreferanse" @@ -5207,15 +5335,15 @@ msgstr "Leverandørens ordrereferanse" msgid "received by" msgstr "mottatt av" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Sendt dato" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Dato bestillingen ble sendt" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Dato ordre ble fullført" @@ -5223,501 +5351,501 @@ msgstr "Dato ordre ble fullført" msgid "Part supplier must match PO supplier" msgstr "Delleverandør må matche PO-leverandør" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "Mengde må være positiv" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Firma som varene selges til" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Kundereferanse " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "Kundens ordrereferanse" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Forsendelsesdato" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "sendt av" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "Kun en åpen ordre kan merkes som fullført" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Bestillingen kan ikke fullføres da det finnes ufullstendige forsendelser" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "Denne ordren kan ikke fullføres da det fortsatt er ufullstendige artikler" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Antall" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "Linjereferanse" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Linjenotater" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Måldato for denne linjen (la stå tomt for å bruke måldatoen fra ordren)" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "Linjeelementbeskrivelse (valgfritt)" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Kontekst" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "Ytterligere kontekst for denne linjen" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Enhetspris" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "Delens leverandør må samsvare med leverandør" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "slettet" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Leverandørdel" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Mottatt" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Antall enheter mottatt" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Innkjøpspris" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Enhet-innkjøpspris" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Hvor vil innkjøper at artikkelen skal lagres?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "Virtuell del kan ikke tildeles salgsordre" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "Kun salgbare deler kan tildeles en salgsordre" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Salgspris" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Enhets-salgspris" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Sendt" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Sendt antall" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Dato for forsendelse" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Leveringsdato" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "Dato for levering av forsendelse" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Sjekket Av" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Brukeren som sjekket forsendelsen" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Forsendelse" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Forsendelsesnummer" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Sporingsnummer" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Sporingsinformasjon for forsendelse" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Fakturanummer" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Referansenummer for tilknyttet faktura" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Forsendelsen er allerede sendt" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "Forsendelsen har ingen tildelte lagervarer" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "Lagervarer er ikke blitt tildelt" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Kan ikke tildele lagervare til en linje med annen del" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Kan ikke tildele lagerbeholdning til en linje uten en del" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Tildelingsantall kan ikke overstige tilgjengelig lagerbeholdning" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Antall må være 1 for serialisert lagervare" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "Salgsordre samsvarer ikke med forsendelse" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "Forsendelsen samsvarer ikke med salgsordre" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Linje" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "Forsendelsesreferanse for salgsordre" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Artikkel" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Velg lagervare å tildele" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Angi lagertildelingsmengde" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "Returordre-referanse" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "Firmaet delen skal returneres fra" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "Returordrestatus" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "Kun serialiserte artikler kan tilordnes en Returordre" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "Velg artikkel som skal returneres fra kunde" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "Mottatt Dato" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "Datoen denne returartikkelen ble mottatt" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "Utfall" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "Utfall for dette linjeelementet" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "Kostnad forbundet med retur eller reparasjon for dette linjeelementet" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Linjeelementer" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "Ordren kan ikke kanselleres" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "Tillat ordre å lukkes med ufullstendige linjeelementer" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "Ordren har ufullstendige linjeelementer" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "Ordren er ikke åpen" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Innkjøpsvaluta" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Internt delnummer" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "Leverandørdel må angis" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "Innkjøpsordre må angis" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "Leverandør må samsvare med innkjøpsordre" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "Innkjøpsordre må samsvare med leverandør" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Ordrelinje" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "Linjeelementet samsvarer ikke med innkjøpsordre" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Velg lagerplassering for mottatte enheter" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "Angi batchkode for innkommende lagervarer" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Angi serienummer for innkommende lagervarer" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Strekkode" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "Skannet strekkode" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Strekkode allerede i bruk" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Heltallsverdi må angis for sporbare deler" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "Linjeelementer må være oppgitt" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "Målplassering må angis" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "Angitte strekkodeverdier må være unike" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Valuta for salgspris" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "Ingen forsendelsesopplysninger oppgitt" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "Linjeelement er ikke knyttet til denne ordren" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "Mengden må være positiv" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Skriv inn serienummer for å tildele" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "Forsendelsen er allerede sendt" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "Forsendelsen er ikke knyttet til denne ordren" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "Ingen treff funnet for følgende serienummer" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "Følgende serienummer er allerede tildelt" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "Returordrelinje" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "Linjeelementet samsvarer ikke med returordre" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "Linjeelementet er allerede mottatt" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "Artikler kan bare mottas mot ordrer som pågår" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "Valuta for linje" @@ -5927,13 +6055,13 @@ msgstr "Duplikatvalg" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Fjern rad" @@ -6047,8 +6175,8 @@ msgstr "Kundereferanse" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Ventende forsendelser" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Handlinger" @@ -6143,30 +6272,21 @@ msgstr "Oppdaterte {part} enhetspris to {price}" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "Oppdaterte {part} enhetspris til {price} og antall til {qty}" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "Del-ID" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Delbeskrivelse" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Revisjon" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Nøkkelord" @@ -6178,7 +6298,7 @@ msgstr "Del-bilde" msgid "Category ID" msgstr "Kategori-ID" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Kategorinavn" @@ -6191,11 +6311,11 @@ msgstr "Standard plasserings-ID" msgid "Default Supplier ID" msgstr "Standard leverandør-ID" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Variant av" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Minimal lagerbeholdning" @@ -6203,19 +6323,19 @@ msgstr "Minimal lagerbeholdning" msgid "Used In" msgstr "Brukt i" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "Produseres" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "Minimal kostnad" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "Maksimal kostnad" @@ -6232,14 +6352,14 @@ msgstr "Overordnet navn" msgid "Category Path" msgstr "Sti til kategori" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Deler" @@ -6256,13 +6376,13 @@ msgstr "BOM artikkel-ID" msgid "Parent IPN" msgstr "Overodnet IPN" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "Minstepris" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "Godkjenn hele Stykklisten" msgid "This option must be selected" msgstr "Dette alternativet må være valgt" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Kategori" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Standard plassering" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Total lagerbeholdning" @@ -6375,753 +6504,784 @@ msgstr "Total lagerbeholdning" msgid "Input quantity for price calculation" msgstr "Sett inn antall for prisberegning" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Delkategori" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Delkategorier" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Standardplassering for deler i denne kategorien" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "Strukturell" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Deler kan ikke tilordnes direkte til en strukturell kategori, men kan tilordnes til underkategorier." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Standard nøkkelord" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "Standard nøkkelord for deler i denne kategorien" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Ikon" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Ikon (valgfritt)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Du kan ikke gjøre denne delkategorien strukturell fordi noen deler allerede er tilordnet den!" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "Ugyldig valg for overordnet del" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Delen '{self}' kan ikke brukes i BOM for '{parent}' (rekursiv)" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Delen '{parent}' er brukt i BOM for '{self}' (rekursiv)" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN må samsvare med regex-mønsteret {pattern}" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "Lagervare med dette serienummeret eksisterer allerede" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "Duplikat av internt delnummer er ikke tillatt i delinnstillinger" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "Del med dette Navnet, internt delnummer og Revisjon eksisterer allerede." -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "Deler kan ikke tilordnes strukturelle delkategorier!" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Delnavn" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "Er Mal" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Er delen en maldel?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Er delen en variant av en annen del?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "Delbeskrivelse (valgfritt)" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "Del-nøkkelord for å øke synligheten i søkeresultater" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Delkategori" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "Delrevisjon eller versjonsnummer" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "Hvor er denne artikkelen vanligvis lagret?" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Standard leverandør" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "Standard leverandørdel" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "Standard utløp" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "Utløpstid (i dager) for lagervarer av denne delen" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "Minimum tillatt lagernivå" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "Måleenheter for denne delen" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Kan denne delen bygges fra andre deler?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Kan denne delen brukes til å bygge andre deler?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "Har denne delen sporing av unike artikler?" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "Kan denne delen kjøpes inn fra eksterne leverandører?" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "Kan denne delen selges til kunder?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Er denne delen aktiv?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "Er dette en virtuell del, som et softwareprodukt eller en lisens?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "Kontrollsum for BOM" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "Lagret BOM-kontrollsum" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "Stykkliste sjekket av" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "Stykkliste sjekket dato" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Opprettingsbruker" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "Eier ansvarlig for denne delen" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "Siste lagertelling" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Selg flere" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "Valuta som brukes til å bufre prisberegninger" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "Minimal BOM-kostnad" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "Minste kostnad for komponentdeler" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "Maksimal BOM-kostnad" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "Maksimal kostnad for komponentdeler" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "Minimal innkjøpskostnad" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "Minimal historisk innkjøpskostnad" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "Maksimal innkjøpskostnad" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "Maksimal historisk innkjøpskostnad" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "Minimal intern pris" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "Minimal kostnad basert på interne prisbrudd" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "Maksimal intern pris" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "Maksimal kostnad basert på interne prisbrudd" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "Minimal leverandørpris" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "Minimumspris for del fra eksterne leverandører" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "Maksimal leverandørpris" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "Maksimalpris for del fra eksterne leverandører" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "Minimal Variantkostnad" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "Beregnet minimal kostnad for variantdeler" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "Maksimal Variantkostnad" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "Beregnet maksimal kostnad for variantdeler" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "Overstyr minstekostnad" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "Overstyr maksimal kostnad" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "Beregnet samlet minimal kostnad" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "Beregnet samlet maksimal kostnad" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "Minimal salgspris" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "Minimal salgspris basert på prisbrudd" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "Maksimal Salgspris" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "Maksimal salgspris basert på prisbrudd" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "Minimal Salgskostnad" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "Minimal historisk salgspris" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "Maksimal Salgskostnad" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "Maksimal historisk salgspris" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "Del for varetelling" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "Antall" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "Antall individuelle lagerenheter på tidspunkt for varetelling" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "Total tilgjengelig lagerbeholdning på tidspunkt for varetelling" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Dato" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "Dato for utført lagertelling" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "Flere notater" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "Bruker som utførte denne lagertellingen" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "Minimal lagerkostnad" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "Estimert minimal kostnad for lagerbeholdning" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "Maksimal lagerkostnad" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "Estimert maksimal kostnad for lagerbeholdning" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "Rapport" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "Lagertellingsrapportfil (generert internt)" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "Antall deler" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "Antall deler dekket av varetellingen" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "Bruker som forespurte varetellingsrapporten" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "Valg må være unike" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "Testmaler kan bare bli opprettet for sporbare deler" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Testnavn" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "Angi et navn for testen" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Testbeskrivelse" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "Legg inn beskrivelse for denne testen" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Aktivert" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Påkrevd" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "Er det påkrevd at denne testen bestås?" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Krever verdi" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "Krever denne testen en verdi når det legges til et testresultat?" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "Krever vedlegg" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "Krever denne testen et filvedlegg når du legger inn et testresultat?" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "Valg" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "Sjekkboksparameter kan ikke ha enheter" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "Sjekkboksparameter kan ikke ha valg" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "Navn på parametermal må være unikt" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "Parameternavn" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "Fysisk enheter for denne parameteren" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "Parameterbeskrivelse" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "Sjekkboks" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "Er dette parameteret en sjekkboks?" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "Gyldige valg for denne parameteren (kommaseparert)" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "Ugyldig valg for parameterverdi" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "Overordnet del" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "Parametermal" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Parameterverdi" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Standardverdi" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "Standard Parameterverdi" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "Del-ID eller delnavn" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "Unik del-ID-verdi" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "Delens interne delnummerverdi" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "Nivå" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "BOM-nivå" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Velg overordnet del" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "Underordnet del" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "Velg del som skal brukes i BOM" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "BOM-antall for denne BOM-artikkelen" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "Denne BOM-artikkelen er valgfri" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Denne BOM-artikkelen er forbruksvare (den spores ikke i produksjonsordrer)" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Svinn" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Forventet produksjonssvinn (absolutt eller prosent)" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "BOM-artikkelreferanse" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "BOM-artikkelnotater" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "Kontrollsum" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "BOM-linje kontrollsum" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "Godkjent" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "Denne BOM-artikkelen er godkjent" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "Arves" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Denne BOM-artikkelen er arvet fra stykkliste for variantdeler" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Tillat Varianter" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Lagervarer for variantdeler kan brukes for denne BOM-artikkelen" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "Antall må være heltallsverdi for sporbare deler" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "Underordnet del må angis" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "BOM-artikkel erstatning" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "Erstatningsdel kan ikke være samme som hoveddelen" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "Overordnet BOM-artikkel" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "Erstatningsdel" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "Del 1" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "Del 2" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "Velg relatert del" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "Del-forhold kan ikke opprettes mellom en del og seg selv" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "Duplikatforhold eksisterer allerede" @@ -7129,7 +7289,7 @@ msgstr "Duplikatforhold eksisterer allerede" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Innkjøpsvaluta for lagervaren" @@ -7155,303 +7315,312 @@ msgstr "Innkjøpsvaluta for lagervaren" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "Ingen deler valgt" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "Velg kategori" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "Original Del" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "Velg original del å duplisere" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Kopier Bilde" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "Kopier bilde fra originaldel" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "Kopier Stykkliste" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "Kopier stykkliste fra original del" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Kopier parametere" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "Kopier parameterdata fra originaldel" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "Kopier notater" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "Kopier notater fra originaldel" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "Innledende lagerbeholdning" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Angi initiell lagermengde for denne delen. Hvis antall er null, er ingen lagerbeholdning lagt til." -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "Innledende lagerplassering" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "Angi initiell lagerplasering for denne delen" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "Velg leverandør (eller la stå tom for å hoppe over)" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "Velg produsent (eller la stå tom for å hoppe over)" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "Produsentens delenummer" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "Valgt firma er ikke en gyldig leverandør" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "Valgt firma er ikke en gyldig produsent" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "Produsentdel som matcher dette MPN-et, finnes allerede" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "Leverandørdel som matcher denne SKU-en, finnes allerede" -#: part/serializers.py:864 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:867 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "Dupliser del" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "Kopier innledende data fra en annen del" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "Innledende lagerbeholdning" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "Lag en del med innledende lagermengde" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "Leverandøropplysninger" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "Legg til innledende leverandørinformasjon for denne delen" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "Kopier kategoriparametre" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "Kopier parametermaler fra valgt delkategori" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "Eksisterende bilde" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "Filnavn for et eksisterende del-bilde" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "Bildefilen finnes ikke" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Begrens lagerbeholdningsrapport til en bestemt del og enhver variant av delen" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Begrens lagerbeholdningsrapport til en bestemt delkategori og alle underkategorier" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Begrens lagerbeholdningsrapport til en bestemt plasering og eventuelle underplasseringer" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "Ekskluder ekstern lagerbeholdning" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "Ekskluder lagervarer i eksterne lokasjoner" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Generer rapport" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "Genererer rapport som inneholder beregnede lagerdata" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "Oppdater deler" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "Oppdater spesifiserte deler med beregnede lagerbeholdningsdata" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "Lagerbeholdningsfunksjonalitet er ikke aktivert" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "Overstyr beregnet verdi for minimumspris" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "Valuta for minstepris" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "Overstyr beregnet verdi for maksimal pris" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "Valuta for maksimal pris" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "Oppdater" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "Oppdater priser for denne delen" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Kan ikke konvertere fra gitte valutaer til {default_currency}" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "Minsteprisen kan ikke være større enn maksimal pris" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "Maksimal pris kan ikke være mindre enn minstepris" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "Kan Produsere" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "Velg del å kopiere BOM fra" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "Fjern eksisterende data" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "Fjern eksisterende BOM-artikler før kopiering" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "Inkluder arvede" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "Inkluder BOM-artikler som er arvet fra maldeler" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "Hopp over ugyldige rader" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "Aktiver dette alternativet for å hoppe over ugyldige rader" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "Kopier erstatningsdeler" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "Kopier erstatningsdeler når BOM-elementer dupliseres" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "Nullstill eksisterende BOM" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "Fjern eksisterende BOM-artikler før opplastning" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "Ingen del-kolonne angitt" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "Flere samsvarende deler funnet" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "Ingen samsvarende del funnet" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "Delen er ikke betegnet som en komponent" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "Antall ikke oppgitt" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Ugyldig antall" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "Minst en BOM-artikkel kreves" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "Totalt Antall" @@ -7603,7 +7772,7 @@ msgstr "Legg til lagertellingsinformasjon" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "Lagertelling" @@ -7790,7 +7959,7 @@ msgstr "Tell delbeholdning" msgid "Transfer part stock" msgstr "Overfør delbeholdning" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "Delhandlinger" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "Delen er virtuall (ikke en fysisk del)" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "Vis detaljer for del" @@ -7853,51 +8022,47 @@ msgstr "Tildelt til produksjonsordrer" msgid "Allocated to Sales Orders" msgstr "Tildelt til Salgsordrer" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "Kan Produsere" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "Minimalt lagerbeholdningsnivå" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "Prisområde" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Siste serienummer" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "Søk etter serienummer" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "Varianter" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Lagerbeholdning" @@ -8003,7 +8168,7 @@ msgstr "Rediger" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Sist oppdatert" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Ingen lagerbeholdning" @@ -8155,7 +8320,7 @@ msgstr "Bilde for del ikke funnet" msgid "Part Pricing" msgstr "Delprising" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Treff funnet for strekkodedata" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "Strekkode samsvarer med ekisterende element" @@ -8221,7 +8386,7 @@ msgstr "Strekkoden samsvarer ikke med eksisterende lagervare" msgid "Stock item does not match line item" msgstr "Lagervare samsvarer ikke med linjeelement" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "Utilstrekkelig lagerbeholdning" @@ -8345,7 +8510,7 @@ msgstr "Gir innebygd støtte for strekkoder" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "Gir innebygd støtte for å skrive ut PDF-etiketter" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "Feilsøkingsmodus" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "Aktiver feilsøkingsmodus - returnerer rå HTML i stedet for PDF" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "Sidestørrelse på etikett-arket" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "Hopp over etiketter" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "Hopp over dette antallet etiketter når det skrives ut etiketterark" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "Kantlinjer" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "Skriv ut en kant rundt hver etikett" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "Liggende" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "Skriv ut etikett-arket i liggende modus" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "InvenTree etikett-ark skriver" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "Sprer ut flere etiketter på ett enkelt ark" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "Etiketten er for stor for sidestørrelse" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "Ingen etiketter ble generert" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "Ingen gyldige objekter angitt for mal" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "Leverandør ble slettet" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Enhetspris" @@ -9006,26 +9173,11 @@ msgstr "Ekstra linjeelementer" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Serienummer" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "Artikler ved lagerplassering" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "Testresultater" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Resultat" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "Ingen resultat" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "Installerte artikler" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Serienummer" @@ -9127,7 +9279,7 @@ msgstr "Leverandørnavn" msgid "Customer ID" msgstr "Kunde-ID" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "Installert i" @@ -9152,9 +9304,9 @@ msgstr "Gjennomgang kreves" msgid "Delete on Deplete" msgstr "Slett når oppbrukt" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "Utløpsdato" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "Utløpsdato før" msgid "Expiry date after" msgstr "Utløpsdato etter" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "Lagerplasseringstyper" msgid "Default icon for all locations that have no icon set (optional)" msgstr "Standard ikom for alle plasseringer som ikke har satt et ikon (valgfritt)" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Lagerplassering" msgid "Stock Locations" msgstr "Lagerplasseringer" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Eier" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Velg eier" @@ -9257,7 +9409,7 @@ msgstr "Velg eier" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Lagervarer kan ikke knyttes direkte mot en strukturell lagerplassering, men kan knyttes mot underplasseringer." -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "Ekstern" @@ -9266,7 +9418,7 @@ msgstr "Ekstern" msgid "This is an external stock location" msgstr "Dette er en ekstern lagerplassering" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "Plasseringstype" @@ -9283,7 +9435,7 @@ msgstr "De kan ikke gjøre denne plasseringen strukturell, da noen lagervarer al msgid "Stock items cannot be located into structural stock locations!" msgstr "Lagervarer kan ikke plasseres i strukturelle plasseringer!" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "Lagervare kan ikke opprettes for virtuelle deler" @@ -9300,236 +9452,236 @@ msgstr "Antall må være 1 for produkt med et serienummer" msgid "Serial number cannot be set if quantity greater than 1" msgstr "Serienummeret kan ikke angis hvis antall er større enn 1" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "Elementet kan ikke tilhøre seg selv" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "Elementet må ha en produksjonsrefereanse om is_building=True" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "Produksjonsreferanse peker ikke til samme del-objekt" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Overordnet lagervare" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "Basisdel" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Velg en tilsvarende leverandørdel for denne lagervaren" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "Hvor er denne lagervaren plassert?" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "Inpakningen denne lagervaren er lagret i" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "Er denne artikkelen montert i en annen artikkel?" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "Serienummer for denne artikkelen" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "Batchkode for denne lagervaren" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "Lagerantall" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "Kildeproduksjon" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "Produksjon for denne lagervaren" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "Brukt av" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "Produksjonsordren som brukte denne lagervaren" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "Kildeinnkjøpsordre" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Innkjøpsordre for denne lagervaren" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "Tildelt Salgsordre" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Utløpsdato for lagervare. Lagerbeholdning vil bli ansett som utløpt etter denne datoen" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "Slett når oppbrukt" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "Slett lagervaren når beholdningen er oppbrukt" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "Innkjøpspris per enhet på kjøpstidspunktet" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "Konvertert til del" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "Delen er ikke angitt som sporbar" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "Antall må være heltall" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({self.quantity})" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "Serienumre må være en liste over tall" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "Antallet stemmer ikke overens med serienumrene" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Seriernummer eksisterer allerede" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "Lagervare har blitt tildelt en salgsordre" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "Lagervare er montert i en annen artikkel" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "Lagervare inneholder andre artikler" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "Lagervare har blitt tildelt til en kunde" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "Lagervare er for tiden i produksjon" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "Serialisert lagerbeholdning kan ikke slås sammen" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "Duplisert lagervare" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "Lagervarer må referere til samme del" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "Lagervarer må referere til samme leverandørdel" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "Lagerstatuskoder må være like" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagervare kan ikke flyttes fordi den ikke er på lager" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "Oppføringsnotater" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "Verdi må angis for denne testen" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "Vedlegg må lastes opp for denne testen" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "Testresultat" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "Testens verdi" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "Vedlegg til testresultat" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "Testnotater" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "Serienummeret er for høyt" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "Overodnet element" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "Bruk pakningsstørrelse når du legger til: antall definert er antall pakker" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "Utløpt" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "Underordnede artikler" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "Innkjøpspris for denne lagervaren, per enhet eller forpakning" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "Angi antall lagervarer som skal serialiseres" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "Antall kan ikke overstige tilgjengelig lagerbeholdning ({q})" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "Angi serienummer for nye artikler" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "Til Lagerplassering" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "Valgfritt notatfelt" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "Serienummer kan ikke tilordnes denne delen" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "Velg lagervare å montere" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "Antall å installere" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "Angi antallet elementer som skal installeres" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "Legg til transaksjonsnotat (valgfritt)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "Antall å installere må være minst 1" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "Lagervaren er utilgjengelig" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "Valgt del er ikke i stykklisten" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "Antall å installere må ikke overskride tilgjengelig antall" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "Lagerplassering for den avinstallerte artikkelen" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "Velg del å konvertere lagervare til" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "Valgt del er ikke et gyldig alternativ for konvertering" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "Kan ikke konvertere lagerprodukt med tildelt leverandørdel" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "Lagerplassering for returnert artikkel" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "Velg lagervarer for å endre status" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "Ingen lagervarer valgt" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Underplasseringer" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "Delen må være salgbar" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "Artikkelen er tildelt en salgsordre" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "Artikkelen er tildelt en produksjonsordre" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "Kunde å tilordne lagervarer" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "Valgt firma er ikke en kunde" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "Lagervare-tildelignsnotater" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "En liste av lagervarer må oppgis" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "Notater om lagersammenslåing" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "Tillat forskjellige leverandører" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "Tillat lagervarer med forskjellige leverandørdeler å slås sammen" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "Tillat forskjellig status" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "Tillat lagervarer med forskjellige statuskoder å slås sammen" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "Minst to lagervarer må oppgis" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "Lagervare primærnøkkel verdi" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "Lagervare statuskode" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "Lager transaksjonsnotater" @@ -9824,7 +9971,7 @@ msgstr "I Karantene" msgid "Legacy stock tracking entry" msgstr "Gammel lagervare sporingsoppføring" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Lagevare opprettet" @@ -9880,7 +10027,7 @@ msgstr "Skill ut fra overordnet artikkel" msgid "Split child item" msgstr "Skill ut fra underartikkel" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Sammenslåtte lagervarer" @@ -9900,7 +10047,7 @@ msgstr "Produksjonsartikkel fullført" msgid "Build order output rejected" msgstr "Produksjonsartikkel avvist" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Brukt av produksjonsordre" @@ -9961,7 +10108,7 @@ msgstr "Notater for lagervare" msgid "Installed Stock Items" msgstr "Installerte lagervarer" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "Installer lagervare" @@ -9969,7 +10116,7 @@ msgstr "Installer lagervare" msgid "Delete all test results for this stock item" msgstr "Slett alle testresultater for denne lagervaren" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "Lagerjusteringshandlinger" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Tell beholdning" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "Legg til lagerbeholdning" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "Fjern lagerbeholdning" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "Serialiser lager" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Overfør lagerbeholdning" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "Tilordne til kunde" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "Slett lagervare" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Produksjon" @@ -10114,12 +10261,8 @@ msgstr "neste side" msgid "Navigate to next serial number" msgstr "Gå til neste serienummer" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "Tilgjengelig antall" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Ingen plassering satt" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "Ingen lagertelling utført" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Ny plassering" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "URL-segment" msgid "Part Settings" msgstr "Innstillinger for del" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "Import av Del" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "Importér Del" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Slett" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "Startside" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Bekreft e-postadresse" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Vennligst bekreft at %(email)s er ne e-postadresse for bruker %(user_display)s." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Bekreft" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "Følgende deler har for lav lagerbeholdning" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Antall som kreves" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "Klikk på følgende lenke for å se denne delen" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "Minimum antall" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Skann strekkode" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Skjemafeil eksisterer" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Legg til" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po index 5608559051..ac0b4fcace 100644 --- a/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -56,26 +56,29 @@ msgstr "Szczegóły błędu można znaleźć w panelu administracyjnym" msgid "Enter date" msgstr "Wprowadź dane" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Uwagi" @@ -132,7 +135,7 @@ msgstr "Podany e-mail domeny nie został zatwierdzony." msgid "Registration is disabled." msgstr "Rejestracja jest wyłączona." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Podano nieprawidłową ilość" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Podany adres URL nie jest poprawnym plikiem obrazu" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "bułgarski" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Czeski" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Duński" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Niemiecki" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Grecki" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Angielski" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Hiszpański" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Hiszpański (Meksyk)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Perski" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "fiński" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Francuski" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebrajski" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "hinduski" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Węgierski" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Włoski" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japoński" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Koreański" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Łotewski" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Holenderski" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norweski" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polski" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugalski" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugalski (Brazylijski)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "Rumuński" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Rosyjski" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Słowacki" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Słoweński" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "serbski" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Szwedzki" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Tajski" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turecki" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Ukraiński" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Wietnamski" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "chiński (uproszczony)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "chiński (tradycyjny)" @@ -403,9 +414,9 @@ msgstr "Duplikaty nazw nie mogą istnieć pod tym samym rodzicem" msgid "Invalid choice" msgstr "Błędny wybór" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Błędny wybór" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Nazwa" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Nazwa" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Opis" @@ -464,8 +475,8 @@ msgstr "Opis" msgid "Description (optional)" msgstr "Opis (opcjonalny)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Ścieżka" @@ -501,12 +512,12 @@ msgstr "Błąd serwera" msgid "An error has been logged by the server." msgstr "Błąd został zapisany w logach serwera." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Numer musi być prawidłowy" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Witamy w InvenTree" msgid "Invalid value" msgstr "Nieprawidłowa wartość" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Plik danych" @@ -651,7 +662,7 @@ msgstr "Adres URL zdalnego pliku obrazu" msgid "Downloading images from remote URL is not enabled" msgstr "Pobieranie obrazów ze zdalnego URL nie jest włączone" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Sprawdzenie robotnika w tle nie powiodło się" @@ -711,48 +722,48 @@ msgstr "Informacja systemowa" msgid "About InvenTree" msgstr "O InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Kompilacja musi zostać anulowana, zanim będzie mogła zostać usunięta" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Materiał eksploatacyjny" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Opcjonalne" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Śledzony" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Przydzielono" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Dostępne" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Zlecenie Budowy" @@ -778,72 +789,72 @@ msgstr "Zlecenie Budowy" msgid "Build Orders" msgstr "Zlecenia budowy" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Nieprawidłowy wybór kompilacji nadrzędnej" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "Odpowiedzialny użytkownik lub grupa muszą być określone" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Nie można zmienić elementu kompletacji" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Odwołanie do zamówienia wykonania" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referencja" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Krótki opis produkcji (opcjonalny)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Budowa nadrzędna" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Zamówienie budowy, do którego budowa jest przypisana" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Komponent" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Wybierz część do budowy" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Odwołanie do zamówienia sprzedaży" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Lokalizacja źródła" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Wybierz lokalizację, z której pobrać element do budowy (pozostaw puste, aby wziąć z dowolnej lokalizacji)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Lokalizacja docelowa" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Wybierz lokalizację, w której będą przechowywane ukończone elementy" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Ilość do stworzenia" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Ilość przedmiotów do zbudowania" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Ukończone elementy" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Ilość produktów magazynowych które zostały ukończone" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Status budowania" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Kod statusu budowania" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Kod partii" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Kod partii dla wyjścia budowy" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Data utworzenia" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Docelowy termin zakończenia" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Docelowa data zakończenia kompilacji. Po tej dacie kompilacja będzie zaległa." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Data zakończenia" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "zrealizowane przez" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Wydany przez" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Użytkownik, który wydał to zamówienie" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Odpowiedzialny" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Użytkownik lub grupa odpowiedzialna za te zlecenie produkcji" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Link Zewnętrzny" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Link do zewnętrznego adresu URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Priorytet budowy" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Priorytet tego zamówienia produkcji" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Priorytet tego zamówienia produkcji" msgid "Project Code" msgstr "Kod projektu" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Kod projektu dla tego zlecenia produkcji" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Kolejność kompilacji {build} została zakończona" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Kolejność kompilacji została zakończona" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Nie określono danych wyjściowych budowy" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Budowanie wyjścia jest już ukończone" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Skompilowane dane wyjściowe nie pasują do kolejności kompilacji" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Ilość musi być większa niż zero" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Ilość nie może być większa niż ilość wyjściowa" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Wyjście budowy {serial} nie przeszło wszystkich testów" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Zbuduj obiekt" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Zbuduj obiekt" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Ilość" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Wymagana ilość dla zlecenia produkcji" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Przydzielona ilość ({q}) nie może przekraczać dostępnej ilości zapasów magazynowych ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Pozycja magazynowa jest nadmiernie przydzielona" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Alokowana ilość musi być większa niż zero" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Ilość musi wynosić 1 dla serializowanych zasobów" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Wybrana pozycja magazynowa nie pasuje do pozycji w zestawieniu BOM" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Element magazynowy" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Lokalizacja magazynowania przedmiotu" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Ilość zapasów do przydzielenia do produkcji" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Zainstaluj do" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Docelowa lokalizacja magazynowa przedmiotu" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Nazwa komponentu" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Numer seryjny" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Lokalizacja" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Automatycznie przydzielaj numery seryjne" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Automatycznie przydzielaj wymagane elementy z pasującymi numerami seryjnymi" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Poniższe numery seryjne już istnieją lub są nieprawidłowe" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Odrzuć przydziały" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Zaakceptuj niekompletną alokację" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Usuń produkcje, które nie zostały zakończone" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Niedozwolone" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Zaakceptuj jako zużyte przez zlecenie produkcji" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Nadmierny przydział zasobów" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Zaakceptuj nieprzydzielone" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Zaakceptuj, że przedmioty magazynowe nie zostały w pełni przypisane do tego zlecenia budowy" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Wymagany stan nie został w pełni przypisany" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Akceptuj niekompletne" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Towar musi znajdować się w magazynie" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Magazyn, z którego mają być pozyskane elementy (pozostaw puste, aby pobrać z dowolnej lokalizacji)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Wyklucz lokalizację" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Wyklucz produkty magazynowe z wybranej lokalizacji" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Towary magazynowe w wielu lokalizacjach mogą być stosowane zamiennie" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Zastępczy magazyn" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Przedmiot opcjonalny" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Numer producenta komponentu" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "ID komponentu" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "IPN komponentu" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Numer Seryjny" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Możliwość śledzenia" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Zezwalaj na warianty" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Element BOM" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "W Zamówieniu" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "W produkcji" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Dostępna ilość" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Produkcja" msgid "Cancelled" msgstr "Anulowano" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Pokaż Kod QR" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Odłącz Kod Kreskowy" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Zamówienie zakupu" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Dodane przez" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Priorytet" @@ -1804,8 +1875,8 @@ msgstr "Źródło magazynu" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Przeznaczenie" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Partia" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Utworzony" @@ -1851,13 +1922,13 @@ msgstr "Zakończone" msgid "Build not complete" msgstr "Budowa niezakończona" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Przydziel zapasy do budowy" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Automatyczne przypisywanie" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Przydziel zapasy" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "Załączniki" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Notatki tworzenia" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "Nowe zlecenie budowy" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "Jak często aktualizować kursy wymiany walut (ustaw zero aby wyłączy #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "dni" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 +msgid "Allow Deletion from Assembly" +msgstr "" + +#: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 msgid "IPN Regex" msgstr "Wyrażenie regularne IPN" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Zezwól na powtarzający się IPN" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Zezwól na edycję IPN" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Skopiuj BOM komponentu" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "Szablon" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Złożenie" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Komponent" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Możliwość zakupu" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Części są domyślnie z możliwością zakupu" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Możliwość sprzedaży" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Części są domyślnie z możliwością sprzedaży" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Części są domyślnie z możliwością śledzenia" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Wirtualny" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Części są domyślnie wirtualne" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Pokaż powiązane części" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Użyj cennika dostawcy" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Nadpisanie historii zakupów" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Ceny wewnętrzne" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Włącz drukowanie etykiet" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Włącz drukowanie etykiet z interfejsu WWW" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "DPI etykiety" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Włącz raporty" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Tryb Debugowania" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Rozmiar strony" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Domyślna wielkość strony dla raportów PDF" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Włącz generowanie raportów testów" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "Automatycznie wypełniaj zlecenia zakupu" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "Automatycznie oznacz zlecenia jako zakończone po odebraniu wszystkich pozycji" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Włącz opcję zapomnianego hasła" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Włącz funkcję zapomnianego hasła na stronach logowania" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Włącz rejestrację" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Włącz samodzielną rejestrację dla użytkowników na stronach logowania" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "Włącz SSO" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "Włącz SSO na stronach logowania" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Adres e-mail jest wymagany" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "Autouzupełnianie użytkowników SSO" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Automatycznie wypełnij dane użytkownika z danych konta SSO" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "E-mail dwa razy" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich adres e-mail" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Hasło dwukrotnie" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich hasło" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Grupuj przy rejestracji" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Wymuś MFA" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Użytkownicy muszą używać zabezpieczeń wieloskładnikowych." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Sprawdź wtyczki przy starcie" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "Włącz integrację URL" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Włącz wtyczki, aby dodać ścieżki URL" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "Włącz integrację z aplikacją" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Włącz wtyczki, aby dodać aplikacje" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Włącz wtyczki, aby uruchamiać zaplanowane zadania" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Klucz ustawień (musi być unikalny - niewrażliwy na wielkość liter" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Pokaż obserwowane części" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Pokaż obserwowane części na stronie głównej" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Pokaż obserwowane kategorie" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Pokaż obserwowane kategorie części na stronie głównej" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Pokaż najnowsze części" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Pokaż najnowsze części na stronie głównej" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Pokaż niski stan magazynowy" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Pokaż elementy o niskim stanie na stronie głównej" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Pokaż wymagany stan zapasów" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Szukaj części" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Ukryj nieaktywne części" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Wyszukaj zlecenia zakupu" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Wyklucz nieaktywne zlecenia zakupu" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Pokaż ilość w formularzach" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Stały pasek nawigacyjny" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Format daty" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Preferowany format wyświetlania dat" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Planowanie komponentów" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Użytkownik" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Cena" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Punkt końcowy" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Sekret" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Współdzielony sekret dla HMAC" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "Id wiadomości" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Unikalny identyfikator dla tej wiadomości" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Host, od którego otrzymano tę wiadomość" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Nagłówek" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Nagłówek tej wiadomości" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Zawartość" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Łącze" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Autor" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "Obraz" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Załącznik" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Brak pliku" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Brak zewnętrznego odnośnika" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Wybierz plik do załączenia" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Komentarz" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "Notatki wysyłkowe do użytku wewnętrznego" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Komponent producenta" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Część bazowa" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Wybierz część" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Wybierz część" msgid "Manufacturer" msgstr "Producent" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Wybierz producenta" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Nazwa parametru" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Wartość" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Wartość parametru" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Jednostki" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Jednostki parametru" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Dostawca" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Wybierz dostawcę" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Uwaga" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "koszt podstawowy" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Opakowanie" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Opakowanie części" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Ilość w opakowaniu" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "wielokrotność" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Zamów wiele" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Dostępność zaktualizowana" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "Domyślna waluta używana dla tego dostawcy" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "Na stanie" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Nieaktywny" @@ -4430,16 +4526,16 @@ msgstr "Pobierz obraz z adresu URL" msgid "Delete image" msgstr "Usuń obraz" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Klient" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "Usuń obraz" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "Usuń przypisany obraz z tej firmy" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Usuń" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "Prześlij obraz" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "Pobierz obraz" @@ -4628,7 +4724,7 @@ msgstr "Usuń komponent producenta" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Komponent wewnętrzny" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Parametry" msgid "New Parameter" msgstr "Nowy parametr" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "Utwórz nowy towar" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Nowy towar" @@ -4762,29 +4862,33 @@ msgstr "Informacja cenowa" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Towary" @@ -4822,83 +4926,91 @@ msgstr "Umieszczony" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "Dane" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Ważny" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "Kopie" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "Liczba kopii do wydrukowania dla każdej etykiety" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "Połączono" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Nieznany" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "Drukowanie" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "Brak mediów" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "Rozłączono" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "Drukarka etykiet" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "Bezpośrednio wydrukuj etykiety dla różnych elementów." -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "Lokalizacja drukarki" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Cena całkowita" @@ -5096,9 +5224,9 @@ msgstr "Posiada ceny" msgid "No matching purchase order found" msgstr "Nie znaleziono pasującego zlecenia zakupu" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Zamówienie" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "Zamówienie oczekujące" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Zlecenie zakupu" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Link do zewnętrznej witryny" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Odniesienie zamówienia" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Status zamówienia zakupu" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "odebrane przez" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Data wydania" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Data wystawienia zamówienia" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "Wartość musi być liczbą dodatnią" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Data wysyłki" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "wysłane przez" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Ilość elementów" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Odebrane" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Cena zakupu" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Cena zakupu jednostkowego" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Gdzie kupujący chce przechowywać ten przedmiot?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Cena sprzedaży" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Jednostkowa cena sprzedaży" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Wysłane" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Wysłana ilość" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Data wysyłki" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Sprawdzone przez" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Użytkownik, który sprawdził tę wysyłkę" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Przesyłka" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Numer przesyłki" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Numer śledzenia" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Informacje o śledzeniu przesyłki" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Przesyłka została już wysłana" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Zarezerwowana ilość nie może przekraczać ilości na stanie" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Linia" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Komponent" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "Zamówienie nie może zostać anulowane" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "Zlecenie zakupu musi być określone" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "Dostawca musi być zgodny ze zleceniem zakupu" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "Zlecenie zakupu musi być zgodne z dostawcą" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "Pozycja nie pasuje do zlecenia zakupu" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Kod kreskowy" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "Duplikuj wybrane" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Usuń wiersz" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Oczekujące przesyłki" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Akcje" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "ID komponentu" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Wersja" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Słowa kluczowe" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "ID kategorii" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Wariant" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Minimalny stan magazynowy" @@ -6203,19 +6323,19 @@ msgstr "Minimalny stan magazynowy" msgid "Used In" msgstr "Użyte w" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "Ścieżka kategorii" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Części" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "Ta opcja musi być zaznaczona" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Kategoria" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Domyślna lokalizacja" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Kategoria komponentu" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Kategorie części" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Domyślna lokalizacja dla komponentów w tej kategorii" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Domyślne słowa kluczowe" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "Nieprawidłowy wybór dla części nadrzędnej" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Nazwa komponentu" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "Czy szablon" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Czy ta część stanowi szablon części?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Czy ta część jest wariantem innej części?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "Domyślne wygasanie" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Czy ten komponent może być zbudowany z innych komponentów?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Czy ta część może być użyta do budowy innych części?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "Czy ta część wymaga śledzenia każdego towaru z osobna?" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Czy ta część jest aktywna?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "Czy to wirtualna część, taka jak oprogramowanie lub licencja?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Tworzenie użytkownika" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "Ostatnia inwentaryzacja" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Sprzedaj wiele" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Data" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Nazwa testu" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Testowy opis" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "Wprowadź opis do tego testu" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Aktywne" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Wymagane" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Wymaga wartości" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "Wymaga załącznika" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "Część nadrzędna" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Wartość parametru" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Wartość domyślna" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "Unikalny wartość ID komponentu" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "Wartość IPN części" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "Poziom" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Wybierz część nadrzędną" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "Podczęść" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "Ten element BOM jest opcjonalny" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "Notatki pozycji BOM" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "Suma kontrolna" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "Zatwierdzone" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Zezwalaj na warianty" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "Część zastępcza" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "Część 1" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "Część 2" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "Wybierz powiązaną część" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Waluta zakupu tego towaru" @@ -7155,303 +7315,312 @@ msgstr "Waluta zakupu tego towaru" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Kopiuj obraz" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "Kopiuj BOM" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Kopiuj parametry" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:867 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "Duplikuj część" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "Usuń istniejące dane" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "Pomiń nieprawidłowe wiersze" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "Włącz tę opcję, aby pominąć nieprawidłowe wiersze" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "Wyczyść istniejący BOM" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "Nie podano ilości" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Nieprawidłowa ilość" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "Część jest wirtualna (nie fizyczna)" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "Przypisane do zamówień sprzedaży" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "Minimalny poziom stanu magazynowego" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Ostatni numer seryjny" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "Szukaj numeru seryjnego" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "Warianty" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Stan" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Ostatnia aktualizacja" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Brak w magazynie" @@ -8155,7 +8320,7 @@ msgstr "Nie znaleziono obrazka części" msgid "Part Pricing" msgstr "Cennik części" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Znaleziono wyniki dla danych kodu kreskowego" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "Kod kreskowy pasuje do istniejącego elementu" @@ -8221,7 +8386,7 @@ msgstr "Kod kreskowy nie pasuje do istniejących pozycji magazynowych" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "Brak prawidłowych obiektów do szablonu" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Cena jednostkowa" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "Razem" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Numer Seryjny" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Wynik" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "Zainstalowane elementy" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Numer seryjny" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "Zainstalowane w" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "Data ważności" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "Lokacje stanu magazynowego" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Właściciel" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Wybierz właściciela" @@ -9257,7 +9409,7 @@ msgstr "Wybierz właściciela" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Nadrzędny towar" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "Część podstawowa" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Wybierz pasującą część dostawcy dla tego towaru" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "Ilość w magazynie" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "Wyszukaj zlecenie zakupu" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Zlecenie zakupu dla tego towaru" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "Usuń po wyczerpaniu" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "Ilość musi być liczbą całkowitą" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Numer seryjny już istnieje" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "Notatki do wpisu" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "Należy podać wartość dla tego testu" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "Wynik testu" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "Element nadrzędny" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "Termin minął" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "Elementy podrzędne" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Podlokalizacje" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "Część musi być dostępna do sprzedaży" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "Poddany kwarantannie" msgid "Legacy stock tracking entry" msgstr "Starsze śledzenie wpisów stanu magazynowego" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Utworzono element magazynowy" @@ -9880,7 +10027,7 @@ msgstr "Podziel z pozycji nadrzędnej" msgid "Split child item" msgstr "Podziel element podrzędny" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Scalone przedmioty magazynowe" @@ -9900,7 +10047,7 @@ msgstr "Dane wyjściowe kolejności kompilacji ukończone" msgid "Build order output rejected" msgstr "Odrzucono wynik zlecenia produkcji" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Zużyte przez kolejność kompilacji" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Przelicz stan magazynowy" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "Usuń stan magazynowy" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Przenieś stan magazynowy" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Budowa" @@ -10114,12 +10261,8 @@ msgstr "następna strona" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Lokacje nie są ustawione" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Nowa lokalizacja" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "Ustawienia części" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "Import części" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "Import części" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Usuń" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "Strona główna" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Potwierdź adres e-mail" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Proszę potwierdzić że %(email)s jest adresem e-mail dla użytkownika %(user_display)s." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Potwierdź" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Wymagana ilość" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "Minimalna ilość" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Zeskanuj kod kreskowy" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Istnieją błędy formularza" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Dodaj" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po index 54c7d4bc2a..d6f1651818 100644 --- a/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po index b055c251b9..bb8c3169e9 100644 --- a/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ro/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:57\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Language: ro_RO\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po index b9e39649a2..bb6632c2d2 100644 --- a/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -56,26 +56,29 @@ msgstr "Подробности об ошибке можно найти в пан msgid "Enter date" msgstr "Введите дату" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Записи" @@ -132,7 +135,7 @@ msgstr "Указанный домен электронной почты не у msgid "Registration is disabled." msgstr "Регистрация отключена." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "недопустимое количество" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Предоставленный URL не является допустимым файлом изображения" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Болгарский" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Чешский" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Датский" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Немецкий" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Греческий" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Английский" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Испанский" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Испанский (Мексика)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Фарси / Персидский" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Финский" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Французский" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Иврит" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Хинди" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Венгерский" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Итальянский" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Японский" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Корейский" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Латышский" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Голландский" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Норвежский" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Польский" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Португальский" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Португальский (Бразильский диалект)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" -msgstr "" +msgstr "Румынский" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Русский" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Словацкий" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Словенский" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Сербский" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Шведский" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Тайский" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Турецкий" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Украинский" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Вьетнамский" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Китайский (Упрощенный)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Китайский (Традиционный)" @@ -403,9 +414,9 @@ msgstr "Повторяющиеся имена не могут существов msgid "Invalid choice" msgstr "Неверный выбор" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Неверный выбор" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Название" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Название" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Описание" @@ -464,8 +475,8 @@ msgstr "Описание" msgid "Description (optional)" msgstr "Описание (необязательно)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Путь" @@ -501,12 +512,12 @@ msgstr "Ошибка сервера" msgid "An error has been logged by the server." msgstr "Сервер зарегистрировал ошибку." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Должно быть действительным номером" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -526,7 +537,7 @@ msgstr "Имя" #: InvenTree/serializers.py:409 msgid "First name of the user" -msgstr "" +msgstr "Имя пользователя" #: InvenTree/serializers.py:412 templates/InvenTree/settings/user.html:41 msgid "Last Name" @@ -534,31 +545,31 @@ msgstr "Фамилия" #: InvenTree/serializers.py:412 msgid "Last name of the user" -msgstr "" +msgstr "Фамилия пользователя" #: InvenTree/serializers.py:415 msgid "Email address of the user" -msgstr "" +msgstr "Электронный адрес пользователя" #: InvenTree/serializers.py:439 msgid "Staff" -msgstr "" +msgstr "Персонал" #: InvenTree/serializers.py:439 msgid "Does this user have staff permissions" -msgstr "" +msgstr "Имеет ли этот пользователь права персонала" #: InvenTree/serializers.py:442 msgid "Superuser" -msgstr "" +msgstr "Суперпользователь" #: InvenTree/serializers.py:442 msgid "Is this user a superuser" -msgstr "" +msgstr "Это пользователь является суперпользователем" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -571,7 +582,7 @@ msgstr "Активный" #: InvenTree/serializers.py:445 msgid "Is this user account active" -msgstr "" +msgstr "Активна эта учетная запись" #: InvenTree/serializers.py:463 msgid "You do not have permission to change this user role." @@ -597,7 +608,7 @@ msgstr "Добро пожаловать в InvenTree" msgid "Invalid value" msgstr "Неверное значение" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Файл данных" @@ -651,7 +662,7 @@ msgstr "ССЫЛКА файла изображения на удаленном msgid "Downloading images from remote URL is not enabled" msgstr "Загрузка изображений с удаленного URL-адреса не включена" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Проверка фонового работника не удалась" @@ -711,48 +722,48 @@ msgstr "Информация о системе" msgid "About InvenTree" msgstr "О программе InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Заказ на производство должен быть отменен перед удалением" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Расходники" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Необязательно" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Отслеживается" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Зарезервировано" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Доступно" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Заказ на производство" @@ -778,72 +789,72 @@ msgstr "Заказ на производство" msgid "Build Orders" msgstr "Заказы на производство" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" -msgstr "" +msgstr "Сборка BOM не подтверждена" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" -msgstr "" +msgstr "Порядок сборки не может быть создан для неактивной части" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" -msgstr "" +msgstr "Порядок сборки не может быть создан для разблокированной части" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Неверный выбор для родительской сборки" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "Должен быть указан ответственный пользователь или группа" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Деталь заказа на производства не может быть изменена" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Ссылка на заказ на производство" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Отсылка" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Краткое описание заказа на производство (необязательно)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Родительский заказ на производство" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Заказ на производство, которому принадлежит этот заказ на производство" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Заказ на производство, которому принад #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Деталь" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Выберите деталь для производства" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Ссылка на заказ" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Заказ на продажу, которому принадлежит этот заказ на производство" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Место хранения - источник" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Выберите место хранения для этого заказа на производство (оставьте пустым, чтобы взять с любого места на складе)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Место хранения результата" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Выберите место хранения завершенных элементов" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Количество производимых деталей" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Количество складских позиций для производства" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Произведенные детали" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Количество складских позиций, которые были произведены" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Статус заказа на производство" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Код статуса заказа на производство" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Код партии" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Код партии для продукции" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Дата создания" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Целевая дата завершения" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Целевая дата для заказа на производства. Заказ будет просрочен после этой даты." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Дата завершения" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "выполнено" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Создано" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Пользователь, создавший этот заказ на производство" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Ответственный" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Пользователь, ответственный за этот заказ на производство" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Внешняя ссылка" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Ссылка на внешний URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Приоритет производства" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Приоритет этого заказа на производство" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Приоритет этого заказа на производство msgid "Project Code" msgstr "Код проекта" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Код проекта для этого заказа на производство" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "Не удалось выгрузить задачу для распределения на сборку" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Заказ на производство {build} был завершен" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Заказ на производство был завершен" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Продукция не указана" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Продукция уже произведена" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Продукция не совпадает с заказом на производство" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Количество должно быть больше нуля" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Количество не может быть больше количества продукции" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "Сборка {serial} не прошла все необходимые тесты" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" -msgstr "" +msgstr "Номер позиции для производства" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Объект производства" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Объект производства" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Количество" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Требуемое количество для заказа на производство" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Элемент производства должен указать продукцию, как главную деталь помеченную как отслеживаемая" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Резервируемое количество ({q}) не должно превышать доступное количество на складе ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Складская позиция перераспределена" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Резервируемое количество должно быть больше нуля" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Количество должно быть 1 для сериализованных запасов" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Выбранная складская позиция не соответствует позиции в BOM" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Складская позиция" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Исходная складская позиция" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Количество на складе для производства" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Установить в" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Целевая складская позиция" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Наименование детали" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "Название кода проекта" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Выход Продукции" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Продукция не совпадает с родительским заказом на производство" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Продукция не соответствует детали заказа на производство" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Эта продукция уже помечена как завершенная" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Сырье для этой продукции не полностью зарезервировано" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Введите количество продукции" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Для отслеживаемых деталей должно быть указано целочисленное количество" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Требуется целое количество, так как материал содержит отслеживаемые детали" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Серийные номера" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Введите серийные номера для продукции" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Расположение" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Автоматически выделить серийные номера" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Автоматически зарезервировать необходимые элементы с соответствующими серийными номерами" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "Для отслеживаемых частей должны быть указаны серийные номера" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Следующие серийные номера уже существуют или недействительны" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Необходимо представить список выхода деталей" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Место хранения для списанной продукции" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Отменить резервирование" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Отменить все резервы запасов для списанной продукции" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Причина списания продукции" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Место хранения для завершенной продукции" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Статус" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Разрешить неполное резервирование" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Завершить продукцию, если запасы не были полностью распределены" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Удалить незавершенную продукцию" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Удалить всю незавершенную продукцию" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Запрещено" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Принять как поглощенный этим заказом на производство" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Отменить резерв, до завершения заказа на производство" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Перераспределенные запасы" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Как вы хотите обработать дополнительные складские позиции, назначенные для заказа на производство" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Некоторые складские позиции были перераспределены" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Разрешить не полное резервирование" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Подтвердите, что складские позиции не были полностью зарезервированы для этого заказа на производство" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Необходимые запасы не были полностью зарезервированы" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Разрешить незавершенные производимые детали" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Допустить, что требуемое кол-во продукции не завершено" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Требуемое количество деталей не было произведено" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Заказ на производство имеет незавершенную продукцию" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Позиция для производства" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Выход продукции" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Продукция должна указывать на тот же производство" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Позиция для производства" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part должна указывать на ту же часть, что и заказ на производство" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Элемент должен быть в наличии" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Превышено доступное количество ({q})" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Продукция должна быть указан для резервирования отслеживаемых частей" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Продукция не может быть указана для резервирования не отслеживаемых частей" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Необходимо указать резервируемые элементы" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Место хранения, где будут зарезервированы детали (оставьте пустым, чтобы забрать их из любого места)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Исключить место хранения" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Исключить складские позиции из этого выбранного места хранения" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Обменный остаток" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Складские позиции в нескольких местах могут использоваться на взаимозаменяемой основе" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Заменить остатки" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Разрешить резервирование замещающих деталей" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Необязательные элементы" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Зарезервировать необязательные позиции BOM для заказа на производство" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "Не удалось запустить задачу автораспределения" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Код производителя" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "Имя Места Хранения" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "Код детали" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "IPN детали" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Серийный номер" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "Зарезервированное количество" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "Доступный запас" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Описание детали" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Отслеживание" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Разрешить разновидности" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Позиция BOM" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "Зарезервированные Запасы" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "В заказе" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "В производстве" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Доступный запас" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Продукция" msgid "Cancelled" msgstr "Отменено" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Показать QR-код" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Отвязать штрих-код" @@ -1715,14 +1786,14 @@ msgstr "Остатки не были полностью зарезервиров #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Завершенная продукция" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Завершенная продукция" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Заказ на продажу" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Создано" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Приоритет" @@ -1804,8 +1875,8 @@ msgstr "Источник запаса" msgid "Stock can be taken from any available location." msgstr "Остатки не могут быть получены из любого доступного места хранения." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Назначение" @@ -1819,11 +1890,11 @@ msgstr "Зарезервированные детали" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Партия" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Создано" @@ -1851,13 +1922,13 @@ msgstr "Завершённые" msgid "Build not complete" msgstr "Производство не завершено" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Дочерние заказы на производство" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Зарезервировать остатки для производства" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Автоматически Зарезервировать" msgid "Manually allocate stock to build" msgstr "Вручную зарезервировать остатки для производства" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Зарезервировать Остатки" @@ -1908,15 +1979,15 @@ msgstr "Создать выход производства" msgid "New Build Output" msgstr "Новая продукция" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Поглощенные Остатки" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Завершенная продукция" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Завершенная продукция" msgid "Attachments" msgstr "Файлы" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Записи производства" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "Резервирование Завершено" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "Все позиции были полностью зарезервированы" @@ -1952,6 +2023,16 @@ msgstr "Новый заказ на производство" msgid "Build Order Details" msgstr "Подробности Заказа на Производство" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Позиции" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Незавершенная продукция" @@ -2156,8 +2237,8 @@ msgstr "Как часто обновлять курс валют (установ #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "дней" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Включить поле ревизии для элемента" #: common/models.py:1412 +msgid "Assembly Revision Only" +msgstr "" + +#: common/models.py:1413 +msgid "Only allow revisions for assembly parts" +msgstr "" + +#: common/models.py:1418 msgid "Allow Deletion from Assembly" msgstr "Разрешить удаление из заказа" -#: common/models.py:1413 +#: common/models.py:1419 msgid "Allow deletion of parts which are used in an assembly" msgstr "Разрешить удаление частей, которые используются в заказе" -#: common/models.py:1418 +#: common/models.py:1424 msgid "IPN Regex" msgstr "Регулярное выражение IPN" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Шаблон регулярного выражения для сопоставления IPN детали" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Разрешить повторяющиеся IPN" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Разрешить нескольким элементам использовать один и тот же IPN" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Разрешить редактирование IPN" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Разрешить изменение значения IPN при редактировании детали" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Скопировать данные BOM детали" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Копировать данные BOM по умолчанию при дублировании детали" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Скопировать данные параметров детали" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Копировать данных параметров по умолчанию при дублировании детали" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Скопировать данные тестирования детали" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Копировать данные тестирования по умолчанию при дублировании детали" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Скопировать параметры по шаблону категории" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Копировать параметры по шаблону категории при создании детали" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Копировать параметры по шаблону катего msgid "Template" msgstr "Шаблон" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "По умолчанию детали являются шаблонами" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Производимая деталь" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "По умолчанию детали могут быть собраны из других компонентов" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Компонент" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "По умолчанию детали могут использоваться в качестве суб-компонентов" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Можно купить" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Можно продавать" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Детали продаются по умолчанию" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Виртуальная" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Детали являются виртуальными по умолчанию" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Показать Импорт в просмотре" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Отобразить мастер импорта на некоторых видах деталей" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Показывать связанные детали" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Отображать связанные детали для элемента" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Начальные данные о запасах" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Разрешить создание начального запаса при добавлении новой детали" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Исходные данные о поставщике" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Разрешить создание исходных данных о поставщике при добавлении новой детали" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Формат отображения детали" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Формат для отображения имени детали" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Значок раздела по умолчанию" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Значок категории по умолчанию (пустой означает отсутствие значка)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Принудительное применение единиц измерения параметров" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "Если введены единицы, значения параметра должны соответствовать указанным единицам измерения" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Минимальные Цены Десятичные Значки" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Минимальное количество десятичных знаков при отображении данных о ценах" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "Макс. Цены десятичные знаки" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Минимальное количество десятичных знаков при отображении данных о ценах" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Использовать цены поставщика" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Включить разницу цен поставщиков при расчетах цен" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Изменить историю покупки" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Ценообразование по историческим заказам на поставку отменяет различия в ценах поставщиков" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Использовать цены из складских позиций" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Использовать расценки из ручного ввода данных о запасах для расчета цен" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Возраст цен складских позиций" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Исключить складские позиции старше указанного количества дней с расчёта цен" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Использовать варианты цен" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Включить разницу цен поставщиков при расчетах цен" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Только Активные Варианты" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Использовать только активные запчасти для расчета стоимости варианта" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Интервал пересчета цен" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Количество дней до автоматического обновления цены" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Внутренние цены" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Разрешить внутренние цены для частей" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Переопределение внутренней цены" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "При наличии внутренних цен переопределить ценовой диапазон" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Включить печать этикеток" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Включить печать этикеток из веб-интерфейса" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Изображение меток DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Разрешение DPI при создании файлов изображений для печати этикеток плагинов" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Включить отчеты" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Включить генерацию отчетов" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Режим отладки" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Генерировать отчеты в режиме отладки (вывод HTML)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "Журнал ошибок отчета" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "Журнал ошибок, которые возникают при создании отчетов" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Размер страницы" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Размер страницы по умолчанию для PDF отчетов" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Включить отчеты" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Включить генерацию отчетов" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Прикрепить отчеты о тестах" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "При печати отчета о тестировании приложить копию тестового отчета к соответствующему складской позиции" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Глобально уникальные серийные номера" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "Серийные номера для складских позиций должны быть уникальными глобально" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Автоматическое заполнение серийных номеров" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Автоматическое заполнение серийных номеров в формах" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Удалить исчерпанный запас" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "Определяет поведение по умолчанию, когда складская позиция заканчивается" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Код партии Шаблона" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Шаблон для создания кодов партии по умолчанию для складских позиций" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Срок годности Запасов" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Включить функцию истечения срока годности" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Использовать просроченные остатки в производстве" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Разрешить продажу просроченных запасов" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Время Залежалости Запасов" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Количество дней перед тем как складская единица будет считаться просроченной" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Использовать просроченные остатки в производстве" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Разрешить использовать просроченные остатки в производстве" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Контроль за собственными запасами" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Разрешить владельцу контролировать расположение складов и номенклатуры" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Значок местоположения по умолчанию" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Значок местоположения склада по умолчанию (пустой означает отсутствие значка)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Показать установленные складские позиции" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "Отображать установленные складские позиции в складских таблицах" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "Проверять спецификацию при установке изделий" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "Установленные единица хранения должны присутствовать в спецификации для родительской детали" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "Разрешить передачу товара, отсутствующего на складе" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "Разрешить перемещение товаров, которых нет на складе, между складами" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Паттерн ссылки заказа на производство" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Поле требуемого паттерна для создания ссылки заказа на производство" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "Требуется ответственный владелец" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "Ответственный владелец должен быть назначен для каждого заказа" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "Запретить вывод сборки до тех пор, пока не пройдут все необходимые тесты" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Включить заказы на возврат" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Включите функцию заказа на возврат в пользовательском интерфейсе" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Шаблон заказа на возврат товара" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "Необходимый шаблон для создания поля «Возврат заказа»" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Редактировать завершенные возвратные заказы" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Разрешить редактирование возвращенных заказов после их завершения" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Шаблон заказа на возврат товара" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Необходимый шаблон для создания поля «Возврат заказа»" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Редактировать завершенные заказы на покупку" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "Включить SSO" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Необходимо указать EMail" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "Написать дважды" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Пароль дважды" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Разрешенные домены" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Принудительное MFA" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Пользователи должны использовать многофакторную безопасность." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Проверять плагины при запуске" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Исключить складские позиции во внешних местах хранения из инвентаризации" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Автоматический период инвентаризации" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Количество дней между автоматической записью запасов (установите нулевое значение для отключения)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "Интервал удаления журнала ошибок" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Журналы ошибок будут удалены после указанного количества дней" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "Показывать полные имена пользователей" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "Отображать полные имена пользователей вместо логинов" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "Включить данные тестовой станции" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "Включить сбор данных с тестовой станции для получения результатов тестирования" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Ключ настроек (должен быть уникальным - не чувствителен к регистру)" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Скрыть неактивные детали" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "Скрывать неактивные части в результатах, отображаемых на главной странице," -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Показывать детали, на которые включены уведомления" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Показывать детали, на которые включены уведомления, на главной странице" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Показывать категории, на которые включены уведомления" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Показывать категории, на которые включены уведомления, на главной странице" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Показывать последние детали" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Показывать последние детали на главной странице" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "Показывать недопустимые спецификации" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Показывать BOMы, ожидающие проверки, на главной странице" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Показывать изменившиеся складские запасы" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Показывать складские позиции с недавно изменившимися запасами на главной странице" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Показывать низкие складские запасы" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Показывать складские позиции с низкими запасами на главной странице" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Показывать закончившиеся складские позиции" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Показывать закончившиеся складские позиции на главной странице" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Показывать требуемые складские позиции" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Показывать требуемые для производства складские позиции на главной странице" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Показывать складские позиции с истекшим сроком годности" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Показывать складские позиции с истёкшим сроком годности на главной странице" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Показывать залежалые складские позиции" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Показывать складские позиции с истекающим сроком годности на главной странице" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Показывать незавершённые производства" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Показывать незавершённые производства на главной странице" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Показывать просроченные производства" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Показывать просроченные производства на главной странице" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Показать невыполненные заказы" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Покажите невыполненные заказы на покупку на главной странице" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Показать просроченные заказы на производство" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Показывать просроченные сборки на главной странице" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Показать невыполненные заказы" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Покажите невыполненные заказы на покупку на главной странице" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Показать просроченные заказы на продажу" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Показывать просроченные заказы на покупку на главной странице" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Показывать новости" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "Отображение PDF-этикетки в браузере вместо загрузки в виде файла" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Принтер этикетки по умолчанию" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Настроить принтер этикеток по умолчанию" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Отображение встроенного отчета" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "Отображение PDF-этикетки в браузере вместо загрузки в виде файла" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Поиск Деталей" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Отображение деталей в окне предварительного просмотра поиска" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Поиск деталей поставщика" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Отображение деталей поставщика в окне предварительного просмотра поиска" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Новая деталь производителя" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Отображение деталей поставщика в окне предварительного просмотра поиска" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Скрыть неактивные детали" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Исключить неактивные детали из окна предварительного просмотра поиска" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Категории поиска" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Отображение деталей в окне предварительного просмотра поиска" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Поиск Запасов" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Отображать складские позиции в окне предварительного просмотра поиска" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Скрыть недоступные складские позиции" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Исключить недоступные складские позиции из окна предварительного просмотра поиска" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Поиск мест хранения" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Отображать места хранения в окне предварительного просмотра поиска" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Поиск компаний" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Поиск заказов на производство" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Отображать заказы на производство в окне предварительного просмотра поиска" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Поиск заказов на покупку" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Поиск заказов на продажу" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Поиск заказов на возврат" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Поиск по Regex" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Фиксированная панель навигации" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Формат даты" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Планирование деталей" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Инвентаризация детали" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Пользователь" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Цена" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Конечная точка" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "Токен" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Токен для доступа" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Секрет" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "ID Сообщения" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Хост" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Заголовок" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Тело" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Работал над" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "Код" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Заголовок" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Ссылка" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Опубликовано" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Автор" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Итого" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Читать" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "Изображение" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Файл изображения" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "Название единицы" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "Символ" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Определение" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Вложения" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Файл не найден" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Отсутствует внешняя ссылка" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Выберите файл для вложения" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Комментарий" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4137,28 +4226,28 @@ msgstr "Записи отправления для внутреннего пол #: company/models.py:447 msgid "Link to address information (external)" -msgstr "" +msgstr "Ссылка на адресную информацию (внешняя)" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Деталь производителя" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Базовая деталь" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Выберите деталь" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Выберите деталь" msgid "Manufacturer" msgstr "Производитель" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Выберите производителя" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "Ссылка на сайт производителя" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" -msgstr "" +msgstr "Описание детали производителя" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Наименование параметра" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Значение" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Значение параметра" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Ед.изм" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Единицы измерения параметра" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Деталь поставщика" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" -msgstr "" +msgstr "Связанная деталь производителя должна ссылаться на ту же базовую деталь" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Поставщик" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Выберите поставщика" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Код поставщика" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Выберите производителя части" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "Ссылка на сайт поставщика" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" -msgstr "" +msgstr "Описание детали поставщика" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Запись" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "базовая стоимость" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Упаковка" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Упаковка детали" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Кол-во в упаковке" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "множественные" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Кратность заказа" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "Валюта по умолчанию для этого поставщи msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "На складе" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Неактивный" @@ -4430,16 +4526,16 @@ msgstr "Скачать изображение по ссылке" msgid "Delete image" msgstr "Удалить изображение" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Покупатель" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Телефон" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "Удалить Изображение" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Удалить" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "Загрузить Изображение" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "Скачать изображение" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Внутренняя деталь" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Параметры" msgid "New Parameter" msgstr "Новый параметр" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "Добавить параметр" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "Создать новую складскую позицию" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Новая складская позиция" @@ -4762,29 +4862,33 @@ msgstr "Информация о цене" msgid "Add Price Break" msgstr "Добавить разрыв цен" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" -msgstr "" +msgstr "Привязать штрихкод к части поставщика" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Складские позиции" @@ -4822,83 +4926,91 @@ msgstr "Размещены" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "Столбцы" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" -msgstr "" +msgstr "Сопоставление столбцов должно быть связано с корректным сеансом импорта" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "Данные" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Корректный" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 -msgid "Rows" +#: importer/serializers.py:91 +msgid "Invalid field defaults" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 +msgid "Rows" +msgstr "Строки" + +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Неизвестно" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Общая стоимость" @@ -5096,9 +5224,9 @@ msgstr "Имеет цену" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Заказ" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Заказ на закупку" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "Заказ на возврат" @@ -5158,9 +5286,9 @@ msgstr "Описание заказа (дополнительно)" msgid "Select project code for this order" msgstr "Выберите код проекта для этого заказа" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" -msgstr "" +msgstr "Ссылка на внешнюю страницу" #: order/models.py:311 msgid "Expected date for order delivery. Order will be overdue after this date." @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Ссылка на заказ" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Компания, в которой детали заказываются" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "получил" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Дата создания" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Компания, которой детали продаются" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Дата отгрузки" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "Отправлено" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Количество" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Записи о позиции" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "Описание позиции (необязательно)" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Контекст" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "Дополнительный контекст для этой строки" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Цена за единицу" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "удалено" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Деталь поставщика" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Получено" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Закупочная цена" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Цена продажи" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Цена последней продажи" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Доставлено" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Отгруженное кол-во" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Дата отправления" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Дата доставки" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Проверн" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Отправление" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Номер отправления" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Номер отслеживания" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Информация об отслеживании доставки" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Номер счета" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "Отправка не имеет зарезервированных складских позиций" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "Складская позиция не была назначена" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Невозможно зарезервировать складскую позицию в позицию другой детали" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Количество должно быть 1 для сериализированных складских позиций" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Строка" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Элемент" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Выберите складскую позицию для резервирования" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Укажите резервируемое количество" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "Выберите позицию, возвращаемую от клиента" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "Дата получения" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "Результат" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Позиции" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "Заказ не открыт" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Валюта цены закупки" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Внутренний код детали" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Позиция" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Выберите место назначения для полученных элементов" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "Введите код партии для поступающих складских позиций" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Введите серийные номера для входящих складских позиций" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Штрих-код" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "Сканированный штрих-код" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Для отслеживаемых деталей должно быть указано целочисленное количество" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Валюта цены продажи" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Введите серийные номера для резервирования" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "Дублировать выбранное" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Удалить строку" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Ожидающие отправления" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Действия" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "Код детали" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Описание детали" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Ревизия" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Ключевые слова" @@ -6178,7 +6298,7 @@ msgstr "Изображение Детали" msgid "Category ID" msgstr "Код категории" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Название категории" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Разновидность" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Минимальный запас" @@ -6203,19 +6323,19 @@ msgstr "Минимальный запас" msgid "Used In" msgstr "Используется в" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "Производится" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "Минимальная Стоимость" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "Максимальная Стоимость" @@ -6232,14 +6352,14 @@ msgstr "Имя родителя" msgid "Category Path" msgstr "Путь к категории" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Детали" @@ -6256,13 +6376,13 @@ msgstr "ID Элемента BOM" msgid "Parent IPN" msgstr "Родительский IPN" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "Минимальная цена" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "Необходимо выбрать эту опцию" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Категория" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Место хранения по умолчанию" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Общий запас" @@ -6375,753 +6504,784 @@ msgstr "Общий запас" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Категория детали" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Категория детали" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Место хранения по умолчанию для деталей этой категории" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "Структура" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Детали не могут быть непосредственно отнесены к структурной категории, но могут быть отнесены к дочерним категориям." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Ключевые слова по умолчанию" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "Ключевые слова по умолчанию для деталей этой категории" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Иконка" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Иконка (необязательно)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "Складская позиция с этим серийным номером уже существует" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 -msgid "Part with this Name, IPN and Revision already exists." +#: part/models.py:894 +msgid "Duplicate part revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:904 +msgid "Part with this Name, IPN and Revision already exists." +msgstr "Часть с таким именем, IPN и ревизией уже существует." + +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Наименование детали" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "Шаблон" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Эта деталь является шаблоном?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Эта деталь является разновидностью другой детали?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "Описание детали (необязательно)" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "Ключевые слова для улучшения видимости в результатах поиска" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Категория" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "Ревизия или серийный номер детали" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "Где обычно хранится эта деталь?" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Поставщик по умолчанию" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "Срок действия по умолчанию" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "Срок годности (в днях) для складских позиций этой детали" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "Минимально допустимый складской запас" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "Единицы измерения этой детали" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Может ли эта деталь быть создана из других деталей?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Может ли эта деталь использоваться для создания других деталей?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "Является ли каждый экземпляр этой детали уникальным, обладающим серийным номером?" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "Может ли эта деталь быть закуплена у внешних поставщиков?" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "Может ли эта деталь быть продана покупателям?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Эта деталь активна?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "Эта деталь виртуальная, как программный продукт или лицензия?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "Контрольная сумма BOM" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "BOM проверил" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "Дата проверки BOM" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Создатель" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "Последняя инвентаризация" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Продать несколько" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "Минимальная Стоимость BOM" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "Максимальная Стоимость BOM" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "Количество Элементов" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Дата" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "Дополнительные Записи" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "Отчет" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "Количество Деталей" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "Шаблоны тестирования могут быть созданы только для отслеживаемых деталей" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Название теста" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "Введите имя для теста" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Описание теста" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "Введите описание для этого теста" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Включено" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Требуется" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Требуется значение" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "Варианты" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "Название параметра" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" -msgstr "" +msgstr "Описание параметра" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "Чекбокс" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "Родительская деталь" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "Шаблон параметра" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Значение Параметра" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Значение по умолчанию" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "Код или наименование детали" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "Значение IPN" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "Уровень" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "Уровень BOM" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Выберите родительскую деталь" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "Суб-деталь" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "Выбрать деталь для использования в BOM" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Эта позиция - расходник. (она не отслеживается в заказах на производство)" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Перерасход" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Расчетное количество перерасходов производства (абсолютное или процентное)" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "Записи о позиции BOM" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "Контрольная сумма" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "Проверен" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Разрешить разновидности" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Складские позиции для разновидностей деталей могут быть использованы для этой позиции BOM" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "Для отслеживаемых деталей количество должно быть целым числом" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "Позиция BOM-родителя" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "Замена детали" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "Часть 1" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "Часть 2" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "Выберите связанную часть" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Валюта закупки складской позиции" @@ -7155,303 +7315,312 @@ msgstr "Валюта закупки складской позиции" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "Не выбрана ни одна деталь" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "Выберите категорию" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "Оригинальная деталь" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Копировать Изображение" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "Скопировать BOM" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Скопировать параметры" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "Копировать Записи" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "Скопировать записи из оригинальной детали" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "Выберите поставщика (или оставьте поле пустым, чтобы пропустить)" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "Выберите поставщика (или оставьте поле пустым, чтобы пропустить)" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "Код производителя" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:867 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "Дублировать деталь" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "Начальный запас" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "Копировать параметры категории" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "Копировать шаблоны параметров из выбранной категории деталей" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "Существующее изображение" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "Исключить складские позиции в внешних местах хранения" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Создать отчет" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "Обновить детали" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "Обновить" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "Можно произвести" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "Подходящая деталь не найдена" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Некорректное количество" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "Общее количество" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "Инвентаризация" @@ -7790,7 +7959,7 @@ msgstr "Установить запасы детали" msgid "Transfer part stock" msgstr "Переместить запасы детали" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "Действия с деталью" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "Показать описание детали" @@ -7853,51 +8022,47 @@ msgstr "Зарезервировано заказами на производс msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "Можно произвести" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "Минимальный складской запас" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "Диапазон цен" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Последний Серийный Номер" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "QR-код детали" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "Рассчитать" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "Скрыть описание детали" @@ -7955,9 +8120,9 @@ msgstr "Разновидности" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Склад" @@ -8003,7 +8168,7 @@ msgstr "Редактировать" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Последнее обновление" @@ -8049,7 +8214,7 @@ msgstr "" #: part/templates/part/prices.html:164 msgid "Price range data is not available for this part." -msgstr "" +msgstr "Данные о ценовом диапазоне недоступны для данной детали." #: part/templates/part/prices.html:175 part/templates/part/prices.html:207 #: part/templates/part/prices.html:228 part/templates/part/prices.html:251 @@ -8076,8 +8241,8 @@ msgstr "Обновить цены" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Нет запасов" @@ -8155,7 +8320,7 @@ msgstr "Изображение детали не найдено" msgid "Part Pricing" msgstr "Цена Детали" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Найдено совпадение по штрих-коду" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "Штрих-код не соответствует существующи msgid "Stock item does not match line item" msgstr "Складская позиция не соответствует позиции" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "Режим отладки" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "Пропустить Этикетки" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "Граница" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "Альбомная" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8825,11 +8992,11 @@ msgstr "Название шаблона" #: report/models.py:157 msgid "Template description" -msgstr "" +msgstr "Описание шаблона" #: report/models.py:163 msgid "Revision number (auto-increments)" -msgstr "" +msgstr "Номер ревизии (автоматически)" #: report/models.py:203 msgid "Filename Pattern" @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "Прогресс" @@ -8929,7 +9096,7 @@ msgstr "" #: report/models.py:511 msgid "Snippet file description" -msgstr "" +msgstr "Описание файла сниппета" #: report/models.py:529 msgid "Asset" @@ -8941,7 +9108,7 @@ msgstr "" #: report/models.py:537 msgid "Asset file description" -msgstr "" +msgstr "Описание медиафайла" #: report/serializers.py:91 msgid "Select report template" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Цена за Единицу" @@ -9006,26 +9173,11 @@ msgstr "Дополнительные элементы" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "Всего" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Серийный номер" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "Результаты тестирования" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "Тестирование" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Результат" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "Нет результата" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "Установленные элементы" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Серийный номер" @@ -9127,7 +9279,7 @@ msgstr "Имя поставщика" msgid "Customer ID" msgstr "ID Клиента" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "Установлено в" @@ -9152,9 +9304,9 @@ msgstr "Требуется рецензия" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "Истекает" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Место хранения" msgid "Stock Locations" msgstr "Места хранения" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Владелец" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Выберите владельца" @@ -9257,7 +9409,7 @@ msgstr "Выберите владельца" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Складские позиции не могут находиться в структурных местах хранения, но могут находиться в дочерних местах хранения." -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "Внешний" @@ -9266,7 +9418,7 @@ msgstr "Внешний" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "Тип Места Хранения" @@ -9283,7 +9435,7 @@ msgstr "Вы не можете сделать это место хранение msgid "Stock items cannot be located into structural stock locations!" msgstr "Складские позиции не могут находиться в структурных местах хранения!" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "Складская позиция не может быть создана для виртуальных деталей" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "Элемент должен иметь ссылку на производство, если is_building=True" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "Ссылка на производство не указывает на тот же элемент" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Складская позиция" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "Базовая деталь" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Выберите соответствующего поставщика детали для этой складской позиции" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "Где находиться эта складская позиция?" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "Упаковка этой складской позиции хранится в" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "Код партии для этой складской позиции" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "Количество на складе" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "Исходное производство" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "Производства для этой складской позиции" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "Поглощен" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "Заказ на производство, который поглотил эту складскую позицию" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Заказ на закупку для этой складской позиции" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Дата истечения срока годности для складской позиции. Остатки будут считаться просроченными после этой даты" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "Удалить при обнулении" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "Удалить эту складскую позицию при обнулении складского запаса" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "Деталь не является отслеживаемой" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Серийные номера уже существуют" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "Складская позиция была назначена заказу на продажу" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "Складская позиция установлена в другую деталь" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "Складская позиция содержит другие детали" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "Складская позиция была назначена покупателю" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "Складская позиция в производстве" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "Складские позиции должны ссылаться на одну и ту же деталь" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "Складские позиции должны ссылаться на одну и ту же деталь поставщика" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "Результат тестирования" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "Записи Тестирования" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "Родительский элемент" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "Зарезервированное количество" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "Просрочен" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "Дочерние элементы" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "Закупочная цена для этой складской позиции, за единицу или за упаковку" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "Введите количество складских позиций для сериализации" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "Введите серийные номера для новых элементов" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "Опциональное поле записей" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "Выберите складскую позицию для установки" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "Добавить запись к транзакции (необязательно)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "Складская позиция недоступна" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "Выбранная деталь отсутствует в спецификации" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "Выберите деталь в которую будет преобразована складская позиция" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "Невозможно преобразовать складскую позицию с назначенной деталью поставщика" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "Выберите складские позиции для изменения статуса" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "Не выбрано ни одной складской позиции" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Места хранения" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "Элемент зарезервирован для заказа на производство" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "Покупатель для назначения складских позиций" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "Выбранная компания не является покупателем" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "Записи о назначенных запасах" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "Необходимо предоставить список складских позиций" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "Записи о слияниях запасов" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "Разрешить слияние складских позиций с различными поставщиками" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "Разрешить слияние складских позиций с различными статусами" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "Необходимо предоставить как минимум 2 складские позиции" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "Статус складской позиции" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "Записи о перемещениях запасов" @@ -9824,7 +9971,7 @@ msgstr "Карантин" msgid "Legacy stock tracking entry" msgstr "Отслеживание устаревших запасов" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Складская позиция создана" @@ -9880,7 +10027,7 @@ msgstr "Отделить от родительского элемента" msgid "Split child item" msgstr "Разбить дочерний элемент" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Объединенные складские позиции" @@ -9900,7 +10047,7 @@ msgstr "Продукция заказа на производство завер msgid "Build order output rejected" msgstr "Продукция заказа на производство отклонена" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Поглощен заказом на производство" @@ -9961,7 +10108,7 @@ msgstr "Записи складской позиции" msgid "Installed Stock Items" msgstr "Установленные складские позиции" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "Установить складскую позицию" @@ -9969,7 +10116,7 @@ msgstr "Установить складскую позицию" msgid "Delete all test results for this stock item" msgstr "Удалить все результаты тестирования для этой складской позиции" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "Добавить Результат Тестирования" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Установить запасы" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "Добавить Остатки" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "Удалить запасы" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "Сериализовать запасы" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Переместить запасы" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "Удалить складскую позицию" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Производство" @@ -10114,12 +10261,8 @@ msgstr "следующая страница" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "Доступный запас" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Место хранения не установлено" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Новое место хранения" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "места хранения" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "Настройки деталей" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "Импорт деталей" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "Импорт детали" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Удалить" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "группа" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "Редактировать шаблон" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "Удалить шаблон" @@ -10825,7 +10968,7 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:440 msgid "No stock location types found" -msgstr "" +msgstr "Типы местоположения склада не найдены" #: templates/InvenTree/settings/settings_staff_js.html:461 msgid "Location count" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "Главная страница" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Подтверждение адреса электронной почт msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Пожалуйста, подтвердите, что %(email)s является адресом электронной почты пользователя %(user_display)s." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Подтвердить" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Требуемое кол-во" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "Минимальное количество" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Сканировать штрихкод" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "Отсоединить" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "Удалить складскую позицию" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "Сканировать складские позиции в место хранения" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "Сканировать штрих-код складской позиции и проверить в этом месте хранения" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "Отметить" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "Складская позиция уже в этом месте хранения" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "Добавленная складская позиция" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "Штрих-код не совпадает с допустимыми складскими позициями" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "Расходник" @@ -11880,7 +12023,7 @@ msgstr "Просмотр BOM" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "Необходимая деталь" @@ -11888,364 +12031,400 @@ msgstr "Необходимая деталь" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "Редактировать заказ на производство" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "Складские позиции были зарезервированы для этого заказа на производство" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "У этого заказа на производство осталась незавершенная продукция" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "Этот заказ на производство не может быть завершен, так как имеет незавершенный выход деталей" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "BOM содержит отслеживаемые детали" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "Продукция должна создаваться индивидуально" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "Ведите серийные номера для создания нескольких единиц продукции" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "Создать Выход Продукции" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "Зарезервировать складские позиции для этой продукции" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "Отменить резерв этой продукции" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "Завершить продукцию" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "Списать продукцию" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "Удалить продукцию" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "Вы уверены, что хотите отменить резерв выбранных складских позиций из этого производства?" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "Отменить резерв складских позиций" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 +#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 +#: templates/js/translated/build.js:838 msgid "Select Build Outputs" msgstr "Выбрать Продукцию" -#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 -#: templates/js/translated/build.js:838 +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "Как минимум одна единица продукции должна быть выбрана" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "Выбранная продукция будет отмечена как завершенная" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "Продукция" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "Завершить Продукцию" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "Выбранная продукция будет отмечена как списанная" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "Списанная продукция отмечена как отклоненная" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "Зарезервированная складская позиция более не доступна" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "Списать Продукцию" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "Выбранная продукция будет удалена" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "Продукция будет полностью удалена" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "Зарезервированные складские позиции были возвращены на склад" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "Удалить Продукцию" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "Завершенная продукция" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "Списанная продукция" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "Удаленная продукция" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "продукция" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "продукция" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "Действия с продукцией" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "Активная продукция не найдена" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "Зарезервированные Строки" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "Требуемые тесты" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "Выбрать детали" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "Выберите место хранения - источник (оставьте пустым, чтобы взять из всех мест)" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "Зарезервировать складские позиции для этого заказа на производства" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "Нет совпадающих складских позиций" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "Складские позиции будут автоматически зарезервированы на этот заказ на производстве, в соответствии с указанными рекомендациями" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "Зарезервировать Складские Позиции" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "Выбрать" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "Редактировать Резерв" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "строка производства" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "позиция производства" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "Отслеживаемая деталь" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "Количество единиц" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "Расходник" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "Отслеживаемый элемент" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "Запасы производства" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "Заказать запасы" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "Зарезервировать Остатки" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "Заказать детали" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "Деталь-шаблон" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "Производимая Деталь" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "Редактировать параметр" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "Удалить параметр" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "Редактировать параметр" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "Удалить параметр" @@ -12493,7 +12672,7 @@ msgstr "" #: templates/js/translated/filters.js:186 #: templates/js/translated/filters.js:667 msgid "true" -msgstr "" +msgstr "да" #: templates/js/translated/filters.js:190 #: templates/js/translated/filters.js:668 @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "Создать фильтр" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Форма содержит ошибки" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "Результаты не найдены" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "Поиск" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "Очистить ввод" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "Столбец Файла" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "Имя Поля" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "Выбрать столбцы" @@ -12600,7 +12779,7 @@ msgstr "НЕТ" #: templates/js/translated/helpers.js:93 msgid "True" -msgstr "" +msgstr "Да" #: templates/js/translated/helpers.js:94 msgid "False" @@ -12687,7 +12866,7 @@ msgstr "Новости не найдены" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "Код" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "Удалить Строку" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12758,7 +12937,7 @@ msgstr "Атрибуты детали" #: templates/js/translated/part.js:94 msgid "Part Creation Options" -msgstr "" +msgstr "Настройки создания детали" #: templates/js/translated/part.js:98 msgid "Part Duplication Options" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "Добавить категорию детали" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "Создать Деталь" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "Редактировать Деталь" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "Деталь изменена" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "Активная Деталь" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "Любые складские позиции для этой запчасти будут удалены" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "Удалить Деталь" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "Низкий запас" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "Требуется" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "Ед. Изм." -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "Виртуальная Деталь" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "Деталь с подпиской" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "Продаваемая деталь" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "Детали не найдены" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "Указать категорию" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "деталь" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "детали" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "Нет категории" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "Отобразить списком" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "Отобразить сеткой" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "Отобразить древом" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "Категория с подпиской" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "результаты" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" -msgstr "Редактировать результаты тестирования" - -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "Приблизительный" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "Максимальное количество" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "Статус Запасов" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "Добавить штрихкод" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "Удалить штрихкод" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "Выберите место хранения" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "Добавить код партии" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "Серийные номера" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "Код Заказа" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "Сканировать штрихкод входящего элемента (не должен совпадать с любой существующей складской позицией)" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "Заказ просрочен" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "Редактировать Позицию" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "Удалить позицию" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "Редактировать Позицию" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "Удалить результат" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "Сериализировать складскую позицию" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "Действия со складской позиции в этом месте хранения" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "Введите начальное количество для этой складской позиции" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "Складская позиция дублирована" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "Дублировать складскую позицию" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "Вы уверены, что хотите удалить эту складскую позицию?" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "Удалить складскую позицию" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "Редактировать складскую позицию" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" -msgstr "" +msgstr "Создать еще один элемент после этого" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "Некоторые данные будут потеряны при слиянии складских позиций" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "Подтвердить слияние складских позиций" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "Объединить складские позиции" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "Переместить запасы" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "Переместить" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "Установить запасы" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "Количество" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "Удалить запасы" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "Взять" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "Добавить Запасы" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Добавить" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "Удалить запасы" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "Выбрать складские позиции" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "Выбрать как минимум одну складскую позицию" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" -msgstr "" +msgstr "Подтвердите изменение запасов" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "ПРОШЕЛ" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "ПРОВАЛЕН" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "НЕТ РЕЗУЛЬТАТА" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "Тест пройден" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "Добавить Результат Тестирования" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "Редактировать результаты тестирования" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "Данные Тестирования" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "В производстве" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "Установленные складские позиции" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" -msgstr "" +msgstr "Место хранения не установлено" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "Изменить статус запасов" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "Объединить Запасы" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "Удалить запасы" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "складские позиции" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "Действия с Запасами" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "Складская позиция в производстве" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "Складская позиция зарезервирована заказом на продажу" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "Складская позиция была назначена покупателю" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "Сериализированная складская позиция была зарезервирована " -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "Складские позиции были полностью зарезервированы" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "Складские позиции были частично зарезервированы" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "Складская позиция была установлена в другую деталь" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "Складская позиция была поглощена заказом на продажу" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "Складская позиция была просрочена" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "Складская позиция будет просрочена в скором времени" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "Складская позиция была отклонена" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "Складская позиция была утеряна" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "Складская позиция была уничтожена" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "Истощен" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "Кол-во Запаса" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "Нет складских позиций соответствующих запросу" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "места хранения" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "Подробности" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "Нет изменений" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "Складская позиция не существует" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "Добавлено" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "Удалено" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "Снять складскую позицию" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "Выберите складскую позицию для съема" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "Установить другую складскую позицию в эту деталь" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "Складские позиции могут быть установлены, только если отвечают следующим критериям" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "Складская позиция ссылается на деталь, чья спецификация является этой складской позицией" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "Складская позиция сейчас доступна на складе" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "Складская позиция не установлена в другую деталь" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "Складская позиция отслеживается либо по коду партии, либо серийному номеру" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "Выберите одну или более складских позиций" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "Выбранные складские позиции" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "Изменить статус запасов" @@ -14231,7 +14438,7 @@ msgstr "" #: templates/js/translated/table_filters.js:279 #: templates/js/translated/table_filters.js:711 msgid "Include subcategories" -msgstr "" +msgstr "Включая подкатегории" #: templates/js/translated/table_filters.js:287 #: templates/js/translated/table_filters.js:764 @@ -14383,7 +14590,7 @@ msgstr "Статус Производства" #: templates/js/translated/table_filters.js:712 msgid "Include parts in subcategories" -msgstr "" +msgstr "Включить детали в подкатегориях" #: templates/js/translated/table_filters.js:717 msgid "Show active parts" @@ -14468,7 +14675,7 @@ msgstr "строк на страницу" #: templates/js/translated/tables.js:537 msgid "Showing all rows" -msgstr "" +msgstr "Отображение всех строк" #: templates/js/translated/tables.js:539 msgid "Showing" diff --git a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po index c476427bff..a223890e64 100644 --- a/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sk/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Slovak\n" "Language: sk_SK\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po index fdb9e1c919..5a198e6370 100644 --- a/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Language: sl_SI\n" @@ -56,26 +56,29 @@ msgstr "Podrobnosti napake so vidne v pogledu administratorja" msgid "Enter date" msgstr "Vnesi datum" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Zapiski" @@ -132,7 +135,7 @@ msgstr "Domena epošte ni podprta." msgid "Registration is disabled." msgstr "Registracija je onemogočena." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Podana napačna količina" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Podani URL ni veljavna slikovna datoteka" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bolgarščina" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Češko" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Danščina" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Nemščina" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Grščina" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Angleščina" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Španščina" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Španščina (Mehiško)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Perzijsko" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finščina" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Francoščina" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebrejščina" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hindujščina" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Madžarščina" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italijanščina" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japonščina" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Korejščina" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Latvijščina" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Nizozemščina" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norveščina" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Poljščina" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugalščina" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugalščina (Brazilsko)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Ruščina" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Slovaščina" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovenščina" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Srbščina" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Švedščina" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Tajščina" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turščina" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamščina" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Kitajščina (poenostavljena)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Kitajščina (tradicionalno)" @@ -403,9 +414,9 @@ msgstr "Podvojena imena ne morejo obstajati pod istim nadrejenim elementom" msgid "Invalid choice" msgstr "Nedovoljena izbira" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Nedovoljena izbira" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Ime" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Ime" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Opis" @@ -464,8 +475,8 @@ msgstr "Opis" msgid "Description (optional)" msgstr "Opis (opcijsko)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Pot" @@ -501,12 +512,12 @@ msgstr "Napaka strežnika" msgid "An error has been logged by the server." msgstr "Zaznana napaka na strežniku." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Mora biti veljavna številka" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Dobrodošli v InvenTree" msgid "Invalid value" msgstr "Neveljavna vrednost" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Podatki datoteke" @@ -651,7 +662,7 @@ msgstr "Povezava do oddaljene slike" msgid "Downloading images from remote URL is not enabled" msgstr "Prenos slik iz oddaljene povezave ni omogočen" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Nadzor dela v ozadju neuspel" @@ -711,48 +722,48 @@ msgstr "Sistemske informacije" msgid "About InvenTree" msgstr "O InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Izgradnja mora biti najprej preklicana, nato je lahko izbrisana" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Nalog izgradnje" @@ -778,72 +789,72 @@ msgstr "Nalog izgradnje" msgid "Build Orders" msgstr "Nalogi izgradnje" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Neveljavna izbira za nadrejeno izgradnjo" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Referenca naloga izgradnje" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referenca" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Nadrejena izgradnja" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Nalog izgradnje na katerega se ta izgradnaj nanaša" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Nalog izgradnje na katerega se ta izgradnaj nanaša" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Del" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Izberite del za izgradnjo" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Referenca dobavnica" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Dobavnica na katero se navezuje ta izgradnja" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Lokacija vira" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Izberite lokacijo dela za to izgradnjo (v primeru da ni pomembno pusti prazno)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Ciljna lokacija" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Izberite lokacijo, kjer bodo končne postavke shranjene" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Količina izgradenj" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Število postavk za izgradnjo" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Končane postavke" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Število postavk zaloge, ki so bile končane" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Status izgradnje" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Koda statusa izgradnje" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Številka serije" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Številka serije za to izgradnjo" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Datum ustvarjenja" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Rok dokončanja" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Rok končanja izdelave. Izdelava po tem datumu bo v zamudi po tem datumu." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Datom končanja" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "dokončal" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Izdal" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Uporabnik, ki je izdal nalog za izgradnjo" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Odgovoren" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Zunanja povezava" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Zunanja povezava" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Nalog izgradnje {build} je dokončan" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Nalog izgradnej dokončan" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Ni določena izgradnja" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Igradnja je že dokončana" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Izgradnja se ne ujema s nalogom izdelave" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Količina" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Izdelana postavka mora imeti izgradnjo, če je glavni del označen kot sledljiv" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Prestavljena zaloga ({q}) ne sme presegati zaloge ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Preveč zaloge je prestavljene" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Prestavljena količina mora biti večja od 0" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Količina za zalogo s serijsko številko mora biti 1" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Postavka zaloge" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Izvorna postavka zaloge" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Količina zaloge za prestavljanje za izgradnjo" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Inštaliraj v" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Destinacija postavke zaloge" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Izgradnja" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Izgradnja se ne ujema z nadrejeno izgradnjo" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Izhodni del se ne ujema s naročilom sestava" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Ta sestava je že zaključena" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Proizvodnja" msgid "Cancelled" msgstr "Preklicano" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Uporabnik" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Povezava" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Priloga" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Manjka datoteka" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Manjka zunanja povezava" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Izberite prilogo" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Komentar" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "Postavljeno" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Poslano" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "Dano v karanteno" msgid "Legacy stock tracking entry" msgstr "Vnos zaloge postavke" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Postavka zaloge ustvarjena" @@ -9880,7 +10027,7 @@ msgstr "Razdeljena od nadrejene postavke" msgid "Split child item" msgstr "Razdeljena podrejena postavka" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Združena zaloga postavk" @@ -9900,7 +10047,7 @@ msgstr "Nalog za izgradnjo končan" msgid "Build order output rejected" msgstr "Nalog za izgradnjo zavrnjen" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Porabljeno v nalogu za izgradnjo" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Izdelava" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po index 2de254e4bf..5227281c4d 100644 --- a/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:57\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\n" "Language: sr_CS\n" @@ -56,26 +56,29 @@ msgstr "Detalji o grešci se mogu naći u admin sekciji" msgid "Enter date" msgstr "Unesite datum" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Napomene" @@ -132,7 +135,7 @@ msgstr "Navedeni domen adrese e-pošte nije prihvaćen." msgid "Registration is disabled." msgstr "Registracija je onemogućena." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Isporučena nevažeća količina" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Navedeni URL nije važeća slikovna datoteka" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bugarski" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Češki" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Danski" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Nemački" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Grčki" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Engleski" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Španski" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Španski (Meksiko)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Persijski" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finski" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Francuski" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Jevrejski" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hindu" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Mađarski" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italijanski" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japanski" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Korejski" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Holandski" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norveški" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Poljski" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugalski" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugalski (Brazil)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Ruski" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovenski" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Srpski" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Švedski" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Tajlandski" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turski" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vijetnamski" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Kineski (Uprošćeni)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Kineski (Tradicionalni)" @@ -403,9 +414,9 @@ msgstr "Dvostruka imena ne mogu postojati pod istom nadredjenom grupom" msgid "Invalid choice" msgstr "Nevažeći izvor" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Nevažeći izvor" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Ime" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Ime" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Opis" @@ -464,8 +475,8 @@ msgstr "Opis" msgid "Description (optional)" msgstr "Opis (Opciono)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Putanja" @@ -501,12 +512,12 @@ msgstr "Greška servera" msgid "An error has been logged by the server." msgstr "Server je zabležio grešku." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Mora biti važeći broj" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "Nevažeća vrednost" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Datoteka" @@ -651,7 +662,7 @@ msgstr "URL udaljene slike" msgid "Downloading images from remote URL is not enabled" msgstr "Preuzimanje slika s udaljenog URL-a nije omogućeno" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Provera pozadinskog radnika nije uspjela" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Nalog za izradu" @@ -778,72 +789,72 @@ msgstr "Nalog za izradu" msgid "Build Orders" msgstr "Nalozi za izradu" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Nevažeći izbor za nadređenu verziju" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Deo u nalogu za izradu ne može se izmeniti" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Reference naloga za pravljenje" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referenca" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Kratak opis izrade (nije obavezno)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Link za eksterni URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "Otkazano" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Korisnik" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Prilog" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Nedostaje datoteka" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Nedostaje eksterni link" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Izaberite datoteku za prilog" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Komentar" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "Postavljen" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Poslato" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "U karantinu" msgid "Legacy stock tracking entry" msgstr "Nasleđeni unos za praćenje zaliha" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Stavka na zalihi stvorena" @@ -9880,7 +10027,7 @@ msgstr "Odvoj od nadređene stavke" msgid "Split child item" msgstr "Podeli podređenu stavku" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Spojene stavke zaliha" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po index 6681a2ac8b..4333b5d0e5 100644 --- a/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -56,26 +56,29 @@ msgstr "Information om felet finns under Error i adminpanelen" msgid "Enter date" msgstr "Ange datum" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Anteckningar" @@ -132,7 +135,7 @@ msgstr "Den angivna e-postdomänen är inte godkänd." msgid "Registration is disabled." msgstr "Registrering är stängd." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Ogiltigt antal angivet" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Angiven URL är inte en giltig bildfil" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "Arabiska" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgariska" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Tjeckiska" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Danska" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Tyska" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Grekiska" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Engelska" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Spanska" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Spanska (Mexikanska)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsi / Persiska" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Finska" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Franska" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Hebreiska" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hindi" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Ungerska" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Italienska" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japanska" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Koreanska" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "Lettiska" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Nederländska" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norska" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polska" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portugisiska" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portugisiska (brasiliansk)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "Rumänska" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Ryska" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Slovakiska" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovenska" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Serbiska" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Svenska" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Thailändska" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Turkiska" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "Ukrainska" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamesiska" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Kinesiska (Förenklad)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Kinesiska (Traditionell)" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "Ogiltigt val" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Ogiltigt val" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Namn" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Namn" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Beskrivning" @@ -464,8 +475,8 @@ msgstr "Beskrivning" msgid "Description (optional)" msgstr "Beskrivning (valfritt)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Sökväg" @@ -501,12 +512,12 @@ msgstr "Serverfel" msgid "An error has been logged by the server." msgstr "Ett fel har loggats av servern." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Måste vara ett giltigt nummer" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Välkommen till InvenTree" msgid "Invalid value" msgstr "Ogiltigt värde" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Datafil" @@ -651,7 +662,7 @@ msgstr "URL för fjärrbildsfil" msgid "Downloading images from remote URL is not enabled" msgstr "Nedladdning av bilder från fjärr-URL är inte aktiverad" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Kontroll av bakgrundsarbetare misslyckades" @@ -711,48 +722,48 @@ msgstr "Systeminformation" msgid "About InvenTree" msgstr "Om InvenTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Byggnationen måste avbrytas innan den kan tas bort" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Byggorder" @@ -778,72 +789,72 @@ msgstr "Byggorder" msgid "Build Orders" msgstr "Byggordrar" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Ogiltigt val för överordnad bygge" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Byggorderreferens" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referens" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Överordnat Bygge" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Byggorder till vilken detta bygge är tilldelad" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Byggorder till vilken detta bygge är tilldelad" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Del" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Välj del att bygga" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Försäljningsorderreferens" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Försäljningsorder till vilken detta bygge allokeras" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Källa Plats" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Välj plats att ta lager från för detta bygge (lämna tomt för att ta från någon lagerplats)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Destinationsplats" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Välj plats där de färdiga objekten kommer att lagras" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Bygg kvantitet" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Antal lagerobjekt att bygga" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Slutförda objekt" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Antal lagerposter som har slutförts" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Byggstatus" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Bygg statuskod" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Batchkod" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Batch-kod för denna byggutdata" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Skapad" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Datum för slutförande" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Måldatum för färdigställande. Byggandet kommer att förfallas efter detta datum." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Slutförandedatum" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "slutfört av" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Utfärdad av" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Användare som utfärdade denna byggorder" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Ansvarig" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Extern länk" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Länk till extern URL" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "Projektkod" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Byggorder {build} har slutförts" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "En byggorder har slutförts" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Ingen byggutgång angiven" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Byggutgång är redan slutförd" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Byggutgång matchar inte bygg order" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Antal" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Byggobjekt måste ange en byggutgång, eftersom huvuddelen är markerad som spårbar" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Tilldelad kvantitet ({q}) får inte överstiga tillgängligt lagersaldo ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Lagerposten är överallokerad" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Allokeringsmängden måste vara större än noll" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Antal måste vara 1 för serialiserat lager" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Artikel i lager" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Källa lagervara" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Lagersaldo att allokera för att bygga" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Installera till" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Destination lagervara" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Bygg utdata" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Byggutdata matchar inte överordnad version" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Serienummer" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Plats" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Status" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Acceptera ofullständig" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Serienummer" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Produktion" msgid "Cancelled" msgstr "Avbruten" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Visa QR-kod" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Försäljningsorder" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Utfärdad av" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Mål" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Skapad" @@ -1851,12 +1922,12 @@ msgstr "Slutförd" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "Bilagor" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Bygganteckningar" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "Ny byggorder" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "dagar" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "Mall" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Virtuell" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Delar är virtuella som standard" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Visa import i vyer" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Visa importguiden i vissa delvyer" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Visa relaterade delar" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Visa relaterade delar för en del" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Visningsformat för delnamn" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Formatera för att visa artikelnamnet" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Interna priser" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Aktivera etikettutskrift" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Aktivera etikettutskrift från webbgränssnittet" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "Etikettbild DPI" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Aktivera rapporter" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Aktivera generering av rapporter" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Debugläge" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Sidstorlek" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Standard sidstorlek för PDF-rapporter" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Aktivera testrapporter" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Aktivera registrering" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Tillåtna domäner" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Aktivera projektkoder" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Visa nyheter" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Sök efter artiklar" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Sök efter leverantörsartikel" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Sök efter tillverkarartikel" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Datumformat" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Användare" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Länk" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "Bild" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Bilaga" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Saknad fil" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Extern länk saknas" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Välj fil att bifoga" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Kommentar" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "Filstorlek" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "Tillverkare" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Leverantör" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Välj leverantör" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4358,9 +4454,9 @@ msgstr "" #: company/serializers.py:210 msgid "Company Name" -msgstr "" +msgstr "Företagsnamn" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "I lager" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "Radera bild" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Kund" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Parametrar" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "Placerad" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "Kolumner" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" -msgstr "" +msgstr "Kolumn" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 -msgid "Rows" +#: importer/serializers.py:91 +msgid "Invalid field defaults" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 +msgid "Rows" +msgstr "Rader" + +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Skickad" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Leveransdatum" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Fakturanummer" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Streckkod" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Nyckelord" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Kategorinamn" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Artiklar" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Kategori" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Ikon" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Ikon (valfritt)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Standardleverantör" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Datum" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "Välj kategori" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Kopiera bild" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Generera rapport" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "Uppdatera" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "Redigera" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Senast uppdaterad" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Serienummer" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "Leverantörsnamn" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "I karantän" msgid "Legacy stock tracking entry" msgstr "Spårningspost för äldre lager" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Lagerpost skapad" @@ -9880,7 +10027,7 @@ msgstr "Dela från överordnat objekt" msgid "Split child item" msgstr "Dela underordnat objekt" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Sammanfogade lagerposter" @@ -9900,7 +10047,7 @@ msgstr "Bygg orderutgång slutförd" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Konsumeras av byggorder" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Bygg" @@ -10114,12 +10261,8 @@ msgstr "nästa sida" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Radera" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "Inga projektkoder hittades" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "Redigera mall" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "Radera mall" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Bekräfta e-postadress" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Bekräfta" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "Rensa alla filter" msgid "Create filter" msgstr "Skapa filter" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "Inga resultat hittades" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "Söker" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "Ingen kategori" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "Visa som lista" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "Inga underkategorier hittades" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "Ladda underkategorier" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "resultat" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "Lagerstatus" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "Lägg till streckkod" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "Ange serienummer" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "Flytta" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Lägg till" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "Inga ändringar" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po index a56a2201ee..00b86e25fa 100644 --- a/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "ป้อนวันที่" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "หมายเหตุ" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "ปริมาณสินค้าไม่ถูกต้อง" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" -msgstr "ภาษาโปรตุเกส" +msgid "Norwegian" +msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 +msgid "Portuguese" +msgstr "ภาษาโปรตุเกส" + +#: InvenTree/locales.py:42 +msgid "Portuguese (Brazilian)" +msgstr "" + +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "ภาษารัสเซีย" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "ภาษาสวีเดน" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "ภาษาไทย" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "ภาษาเวียดนาม" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "ชื่อ" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "ชื่อ" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "คำอธิบาย" @@ -464,8 +475,8 @@ msgstr "คำอธิบาย" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "เกิดข้อผิดพลาดที่เซิร์ฟเ msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "ต้องเป็นตัวเลข" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "ยินดีต้อนรับเข้าสู่ Inventree" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "ไฟล์ข้อมูล" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "ข้อมูลระบบ" msgid "About InvenTree" msgstr "เกี่ยวกับ Inventree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "ออกโดย" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "จำนวนต้องมีค่ามากกว่า 0" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "สถานที่" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "สถานะ" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "ยกเลิกแล้ว" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "สำเร็จแล้ว" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "ผู้ใช้งาน" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "ลิงก์" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "ไฟล์แนบ" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "ไม่พบไฟล์" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "เลือกไฟล์ที่ต้องการแนบ" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "ความคิดเห็น" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "จัดส่งแล้ว" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "ชิ้นส่วน" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po index 8a1c55e82b..61d2f50d51 100644 --- a/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -56,26 +56,29 @@ msgstr "Hata detaylarını admin panelinde bulabilirsiniz" msgid "Enter date" msgstr "Tarih giriniz" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Notlar" @@ -132,7 +135,7 @@ msgstr "Sağlanan e-posta alanı onaylanmadı." msgid "Registration is disabled." msgstr "Kayıt devre dışı." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Geçersiz veri sağlandı" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "Sağlanan URL geçerli bir resim dosyası değil" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Bulgarca" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Çekçe" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Danca" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Almanca" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Yunanca" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "İngilizce" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "İspanyolca" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "İspanyolca(Meksika)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Farsça" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Fince" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Fransızca" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "İbranice" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Hintçe" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Macarca" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "İtalyanca" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Japonca" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Korece" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Flemenkçe" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Norveççe" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Polonyaca" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Portekizce" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Portekizce (Brezilya)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Rusça" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Slovakça" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Slovakça" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Sırpça" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "İsveççe" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Tay dili" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Türkçe" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Vietnamca" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Çince (Basitleştirilmiş)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Çince (Geleneksel)" @@ -403,9 +414,9 @@ msgstr "Aynı kaynak altında birden fazla aynı isim kullanılamaz" msgid "Invalid choice" msgstr "Geçersiz seçim" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Geçersiz seçim" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Adı" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Adı" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Açıklama" @@ -464,8 +475,8 @@ msgstr "Açıklama" msgid "Description (optional)" msgstr "Açıklama (isteğe bağlı)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Yol" @@ -501,12 +512,12 @@ msgstr "Sunucu Hatası" msgid "An error has been logged by the server." msgstr "Bir hafta sunucu tarafından kayıt edildi." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Geçerli bir numara olmalı" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "InvenTree'ye Hoşgeldiniz" msgid "Invalid value" msgstr "Geçersiz değer" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Veri Dosyası" @@ -651,7 +662,7 @@ msgstr "Uzaktan görüntü dosya URL'si" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Arka plan çalışanı kontrolü başarısız oldu" @@ -711,48 +722,48 @@ msgstr "Sistem Bilgisi" msgid "About InvenTree" msgstr "InvenTree Hakkında" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Mevcut" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Yapım İşi Emri" @@ -778,72 +789,72 @@ msgstr "Yapım İşi Emri" msgid "Build Orders" msgstr "Yapım İşi Emirleri" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Yapım İşi Emri Referansı" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Referans" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Üst Yapım İşi" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Parça" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Yapım işi için parça seçin" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Satış Emri Referansı" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği satış emri" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Kaynak Konum" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Bu yapım işi için stok alınacak konumu seçin (her hangi bir stok konumundan alınması için boş bırakın)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Hedef Konum" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Tamamlanmış ögelerin saklanacağı konumu seçiniz" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Yapım İşi Miktarı" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Yapım işi stok kalemlerinin sayısı" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Tamamlanmış ögeler" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Tamamlanan stok kalemlerinin sayısı" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Yapım İşi Durumu" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Yapım işi durum kodu" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Sıra numarası" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Yapım işi çıktısı için sıra numarası" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Oluşturulma tarihi" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Hedef tamamlama tarihi" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Yapım işinin tamamlanması için hedef tarih. Bu tarihten sonra yapım işi gecikmiş olacak." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Tamamlama tarihi" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "tamamlayan" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Veren" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Bu yapım işi emrini veren kullanıcı" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Sorumlu" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Harici Bağlantı" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Harici URL'ye bağlantı" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Yapım işi çıktısı belirtilmedi" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Yapım işi çıktısı zaten tamamlanmış" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Yapım işi çıktısı, yapım işi emri ile eşleşmiyor" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Miktar" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Ana parça izlenebilir olarak işaretlendiğinden, yapım işi çıktısı için bir yapım işi ögesi belirtmelidir" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Stok kalemi fazladan tahsis edilmiş" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Seri numaralı stok için miktar bir olmalı" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Stok Kalemi" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Kaynak stok kalemi" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Yapım işi için tahsis edilen stok miktarı" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Kurulduğu yer" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Hedef stok kalemi" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Yapım işi çıktısı için miktarını girin" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Seri Numaraları" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Yapım işi çıktısı için seri numaraları girin" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Konum" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Durum" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Gerekli stok tamamen tahsis edilemedi" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Gerekli yapım işi miktarı tamamlanmadı" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Üretici Parça Numarası" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Seri Numara" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Takip Edilebilir" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Çeşide İzin Ver" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Üretim" msgid "Cancelled" msgstr "İptal edildi" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "Stok, yapım işi emri için tamamen tahsis edilemedi" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Sipariş Emri" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Veren" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "Stok Kaynağı" msgid "Stock can be taken from any available location." msgstr "Stok herhangi bir konumdan alınabilir." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Hedef" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Toplu" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Oluşturuldu" @@ -1851,13 +1922,13 @@ msgstr "Tamamlandı" msgid "Build not complete" msgstr "Yapım İşi tamamlanmadı" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Alt Yapım İşi Emrileri" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Yapım İşi için Stok Tahsis Et" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Stok Tahsis Et" @@ -1908,15 +1979,15 @@ msgstr "Yeni yapım işi çıktısı oluştur" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Tamamlanmış Yapım İşi Çıktıları" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Tamamlanmış Yapım İşi Çıktıları" msgid "Attachments" msgstr "Ekler" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Yapım İşi Notları" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "Yeni Yapım İşi Emri" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Tamamlanmamış Çıktılar" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "günler" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 +msgid "Allow Deletion from Assembly" +msgstr "" + +#: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 msgid "IPN Regex" msgstr "DPN Regex" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Parça DPN eşleştirmesi için Düzenli İfade Kalıbı (Regex)" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Yinelenen DPN'ye İzin Ver" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Birden çok parçanın aynı DPN'yi paylaşmasına izin ver" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "DPN Düzenlemeye İzin Ver" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Parçayı düzenlerken DPN değiştirmeye izin ver" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Kategori Paremetre Sablonu Kopyala" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" msgid "Template" msgstr "Şablon" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Parçaları varsayılan olan şablondur" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Montaj" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Parçalar varsayılan olarak başka bileşenlerden monte edilebilir" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Bileşen" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Parçalar varsayılan olarak alt bileşen olarak kullanılabilir" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Satın Alınabilir" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Parçalar varsayılan olarak satın alınabilir" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Satılabilir" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Parçalar varsayılan olarak satılabilir" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Parçalar varsayılan olarak takip edilebilir" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Sanal" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Parçalar varsayılan olarak sanaldır" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "İlgili parçaları göster" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Hata Ayıklama Modu" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Raporları hata ayıklama modunda üret (HTML çıktısı)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Sayfa Boyutu" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "PDF raporlar için varsayılan sayfa boyutu" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Stok konumu ve ögeler üzerinde sahiplik kontrolünü etkinleştirin" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Formlarda Miktarı Göster" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Kullanıcı" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Fiyat" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Bağlantı" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "Resim" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Ek" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Eksik dosya" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Bozuk dış bağlantı" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Eklenecek dosyayı seç" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Yorum" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Temel Parça" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Parça seçin" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Parça seçin" msgid "Manufacturer" msgstr "Üretici" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Üretici seçin" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "ÜPN" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Parametre adı" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Değer" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Parametre değeri" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Tedarikçi Parçası" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Tedarikçi" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Tedarikçi seçin" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Not" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "temel maliyet" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Paketleme" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "çoklu" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Pasif" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Müşteri" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "Fiyat Bilgisi" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Stok Kalemleri" @@ -4822,83 +4926,91 @@ msgstr "Sipariş verildi" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Harici sayfaya bağlantı" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Sipariş referansı" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Sevk edildi" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Tahsis miktarı stok miktarını aşamaz" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Seri numaralı stok kalemi için miktar bir olmalı" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Stok tahsis miktarını girin" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "İşlemler" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "DPN" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Revizyon" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Anahtar kelimeler" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Çeşidi" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Minimum Stok" @@ -6203,19 +6323,19 @@ msgstr "Minimum Stok" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Parçalar" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Varsayılan Konum" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Parça Kategorileri" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Bu kategori içindeki parçalar için varsayılan konum" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Parça adı" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "Şablon Mu" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Bu parça bir şablon parçası mı?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Bu parça başka bir parçanın çeşidi mi?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "Parça revizyon veya versiyon numarası" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Varsayılan Tedarikçi" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "Varsayılan tedarikçi parçası" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Bu parça diğer parçalardan yapılabilir mi?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Bu parça diğer parçaların yapımında kullanılabilir mi?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "Bu parça müşterilere satılabilir mi?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Bu parça aktif mi?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Oluşturan Kullanıcı" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "Test şablonları sadece takip edilebilir paçalar için oluşturulabilir" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Test Adı" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Test Açıklaması" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Etkin" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Gerekli" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "Testi geçmesi için bu gerekli mi?" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "Parametre şablon adı benzersiz olmalıdır" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "Parametre Şablonu" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Bu malzeme listesi, çeşit parçalar listesini kalıtsalıdır" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Çeşide İzin Ver" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Çeşit parçaların stok kalemleri bu malzeme listesinde kullanılabilir" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "Parça işlemleri" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Son Seri Numarası" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Stok" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Stok Yok" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Barkod verisi için eşleşme bulundu" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "Şablon için geçerli bir nesne sağlanmadı" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Seri Numara" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Seri No" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Stok Konumu" msgid "Stock Locations" msgstr "Stok Konumları" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "Seri numarası olan ögenin miktarı bir olmalı" msgid "Serial number cannot be set if quantity greater than 1" msgstr "Miktar birden büyük ise seri numarası ayarlanamaz" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Üst Stok Kalemi" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Bu stok kalemi için tedarikçi parçası seçin" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "Bu öge için seri numarası" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "Seri numaraları tam sayı listesi olmalı" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "Miktar seri numaları ile eşleşmiyor" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Seri numaraları zaten mevcut" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stok kalemi stokta olmadığı için taşınamaz" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "İşlem notu ekle (isteğe bağlı)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Alt konumlar" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "Karantinaya alındı" msgid "Legacy stock tracking entry" msgstr "Eski stok izleme girişi" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Stok kalemi oluşturuldu" @@ -9880,7 +10027,7 @@ msgstr "Üst ögeden ayır" msgid "Split child item" msgstr "Alt ögeyi ayır" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Stok parçalarını birleştir" @@ -9900,7 +10047,7 @@ msgstr "Yapım emri çıktısı tamamlandı" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "Stok ayarlama işlemleri" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "Stoku seri numarala" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Yapım İşi" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Konum ayarlanmadı" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Yeni Konum" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Onay" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po index 9d67298404..53b4c5f083 100644 --- a/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/uk/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Ukrainian\n" "Language: uk_UA\n" @@ -19,11 +19,11 @@ msgstr "" #: InvenTree/api.py:272 msgid "API endpoint not found" -msgstr "" +msgstr "Кінцева точка API не знайдена" #: InvenTree/api.py:505 msgid "User does not have permission to view this model" -msgstr "" +msgstr "У користувача немає дозволу на перегляд цієї моделі" #: InvenTree/conversion.py:160 #, python-brace-format @@ -32,52 +32,55 @@ msgstr "" #: InvenTree/conversion.py:177 msgid "No value provided" -msgstr "" +msgstr "Значення не вказане" #: InvenTree/conversion.py:204 #, python-brace-format msgid "Could not convert {original} to {unit}" -msgstr "" +msgstr "Не вдалося перетворити {original} на {unit}" #: InvenTree/conversion.py:206 msgid "Invalid quantity supplied" -msgstr "" +msgstr "Невірна кількість поставляється" #: InvenTree/conversion.py:220 #, python-brace-format msgid "Invalid quantity supplied ({exc})" -msgstr "" +msgstr "Невірна кількість поставляється ({exc})" #: InvenTree/exceptions.py:109 msgid "Error details can be found in the admin panel" -msgstr "" +msgstr "Деталі помилки можна знайти на панелі адміністратора" #: InvenTree/fields.py:136 msgid "Enter date" -msgstr "" +msgstr "Введіть дату" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" -msgstr "" +msgstr "Нотатки" #: InvenTree/format.py:164 #, python-brace-format @@ -90,55 +93,55 @@ msgstr "" #: InvenTree/forms.py:128 msgid "Enter password" -msgstr "" +msgstr "Введіть пароль" #: InvenTree/forms.py:129 msgid "Enter new password" -msgstr "" +msgstr "Введіть новий пароль" #: InvenTree/forms.py:138 msgid "Confirm password" -msgstr "" +msgstr "Підтвердити пароль" #: InvenTree/forms.py:139 msgid "Confirm new password" -msgstr "" +msgstr "Підтвердити новий пароль" #: InvenTree/forms.py:143 msgid "Old password" -msgstr "" +msgstr "Старий пароль" #: InvenTree/forms.py:182 msgid "Email (again)" -msgstr "" +msgstr "Email (ще раз)" #: InvenTree/forms.py:186 msgid "Email address confirmation" -msgstr "" +msgstr "Підтвердження адреси електронної пошти" #: InvenTree/forms.py:209 msgid "You must type the same email each time." -msgstr "" +msgstr "Ви повинні використовувати щоразу однаковий email." #: InvenTree/forms.py:248 InvenTree/forms.py:256 msgid "The provided primary email address is not valid." -msgstr "" +msgstr "Вказана основна адреса електронної пошти недійсна." #: InvenTree/forms.py:263 msgid "The provided email domain is not approved." -msgstr "" +msgstr "Наданий домен електронної пошти не затверджено." #: InvenTree/forms.py:392 msgid "Registration is disabled." -msgstr "" +msgstr "Реєстрацію вимкнено." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" -msgstr "" +msgstr "Невірна кількість" #: InvenTree/helpers.py:533 msgid "Empty serial number string" -msgstr "" +msgstr "Пустий серійний номер" #: InvenTree/helpers.py:562 msgid "Duplicate serial" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 +msgid "Ukrainian" +msgstr "Українська" + +#: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po index 81dcba6000..fb25197f85 100644 --- a/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -56,26 +56,29 @@ msgstr "Chi tiết lỗi có thể được tìm thấy trong bảng quản tr msgid "Enter date" msgstr "Nhập ngày" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "Ghi chú" @@ -132,7 +135,7 @@ msgstr "Miền email được cung cấp không được phê duyệt." msgid "Registration is disabled." msgstr "Đăng ký bị vô hiệu hóa." -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "Số lượng cung cấp không hợp lệ" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "URL được cung cấp không phải là tệp hình ảnh hợp lệ" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 msgid "Bulgarian" msgstr "Tiếng Bulgaria" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "Tiếng Séc" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "Tiếng Đan Mạch" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "Tiếng Đức" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "Tiếng Hy Lạp" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "Tiếng Anh" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "Tiếng Tây Ban Nha" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "Tiếng Tây Ban Nha (Mê-hi-cô)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "Tiếng Ba Tư" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 msgid "Finnish" msgstr "Tiếng Phần Lan" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "Tiếng Pháp" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "Tiếng Do Thái" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "Tiếng Ấn Độ" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "Tiếng Hung-ga-ri" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "Tiếng Ý" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "Tiếng Nhật" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "Tiếng Hàn" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "Tiếng Hà Lan" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "Tiếng Na Uy" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "Tiếng Ba Lan" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "Tiếng Bồ Đào Nha" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "Tiếng Bồ Đào Nha (Brazil)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "Tiếng Nga" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 msgid "Slovak" msgstr "Tiếng Slo-va-ki-a" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "Tiếng Slô-ven-ni-a" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "Tiếng Serbia" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "Tiếng Thụy Điển" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "Tiếng Thái" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "Tiếng Thổ Nhĩ Kỳ" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "Tiếng Việt" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "Tiếng Trung (Giản thể)" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "Tiếng Trung (Phồn thể)" @@ -403,9 +414,9 @@ msgstr "Tên trùng lặp không thể tồn tại trong cùng cấp thư mục" msgid "Invalid choice" msgstr "Lựa chọn sai" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "Lựa chọn sai" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "Tên" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "Tên" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "Mô tả" @@ -464,8 +475,8 @@ msgstr "Mô tả" msgid "Description (optional)" msgstr "Mô tả (tùy chọn)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "Đường dẫn" @@ -501,12 +512,12 @@ msgstr "Lỗi máy chủ" msgid "An error has been logged by the server." msgstr "Lỗi đã được ghi lại bởi máy chủ." -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "Phải là một số hợp lệ" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "Chào mừng đến với InvenTree" msgid "Invalid value" msgstr "Giá trị không hợp lệ" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "Tập tin dữ liệu" @@ -651,7 +662,7 @@ msgstr "URL của tệp hình ảnh bên ngoài" msgid "Downloading images from remote URL is not enabled" msgstr "Chức năng tải hình ảnh từ URL bên ngoài không được bật" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "Nhân công chạy ngầm kiểm tra thất bại" @@ -711,48 +722,48 @@ msgstr "Thông tin hệ thống" msgid "About InvenTree" msgstr "Giới thiệu" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "Bạn dựng phải được hủy bỏ trước khi có thể xóa được" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "Vật tư tiêu hao" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "Tuỳ chọn" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "Đã theo dõi" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "Đã cấp phát" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "Có sẵn" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "Tạo đơn hàng" @@ -778,72 +789,72 @@ msgstr "Tạo đơn hàng" msgid "Build Orders" msgstr "Tạo đơn hàng" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "Lựa chọn sai cho bản dựng cha" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "Sản phẩm đơn đặt bản dựng không thể thay đổi được" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "Tham chiếu đơn đặt bản dựng" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "Tham chiếu" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "Mô tả ngắn về phiên bạn (Tùy chọn)" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Phiên bản cha" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "Đơn đặt bản dựng với bản dựng này đã được phân bổ" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "Đơn đặt bản dựng với bản dựng này đã được phân b #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "Nguyên liệu" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "Chọn sản phẩm để xây dựng" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "Tham chiếu đơn đặt bản dựng" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "Đơn đặt bán hàng với bản dựng này đã được phân bổ" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "Địa điểm nguồn" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "Chọn địa điểm để lấy trong kho cho bản dựng này (để trống để lấy từ bất kỳ vị trí kho nào)" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "Địa điểm đích" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "Chọn địa điểm nơi hàng hóa hoàn thiện sẽ được lưu kho" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "Xây dựng số lượng" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "Số kho hàng để dựng" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "Những mục hoàn thành" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "Số sản phẩm trong kho đã được hoàn thiện" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "Trnạg thái bản dựng" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "Mã trạng thái bản dựng" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "Mã lô hàng" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "Mã lô cho đầu ra bản dựng này" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "Ngày tạo" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "Ngày hoàn thành mục tiêu" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "Ngày mục tiêu để hoàn thành bản dựng. Bản dựng sẽ bị quá hạn sau ngày này." -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "Ngày hoàn thành" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "hoàn thành bởi" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "Cấp bởi" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "Người dùng người đã được phân công cho đơn đặt bản dựng này" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "Chịu trách nhiệm" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "Người dùng hoặc nhóm có trách nhiệm với đơn đặt bản dựng này" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "Liên kết bên ngoài" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "Liên kết đến URL bên ngoài" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "Độ ưu tiên" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "Độ quan trọng của đơn đặt bản dựng" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "Độ quan trọng của đơn đặt bản dựng" msgid "Project Code" msgstr "Mã dự án" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "Mã dự án cho đơn đặt bản dựng này" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "Đơn đặt bản dựng {build} đã được hoàn thành" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "Một đơn đặt bản dựng đã được hoàn thành" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "Không có đầu ra bản dựng đã được chỉ ra" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "Đầu ra bản dựng đã được hoàn thiện" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "Đầu ra bản dựng không phù hợp với đơn đặt bản dựng" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "Số lượng phải lớn hơn 0" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "Số lượng không thể lớn hơn số lượng đầu ra" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "Dựng đối tượng" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "Dựng đối tượng" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "Số lượng" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "Yêu cầu số lượng để dựng đơn đặt" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Xây dựng mục phải xác định đầu ra, bởi vì sản phẩm chủ được đánh dấu là có thể theo dõi" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Số lượng được phân bổ ({q}) không thể vượt quá số lượng có trong kho ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "Kho hàng đã bị phân bổ quá đà" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "Số lượng phân bổ phải lớn hơn 0" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "Số lượng phải là 1 cho kho sê ri" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "Hàng trong kho đã chọn không phù hợp với đường BOM" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "Kho hàng" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "Kho hàng gốc" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "Số lượng kho hàng cần chỉ định để xây dựng" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "Cài đặt vào" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "Kho hàng đích" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "Tên sản phẩm" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "Đầu ra bản dựng" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "Đầu ra xây dựng không hợp với bản dựng cha" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "Đầu ra sản phẩm không phù hợp với bản dựng đơn đặt hàng" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "Đầu ra bản dựng này đã được hoàn thành" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "Đầu ra bản dựng này chưa được phân bổ đầy đủ" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "Điền số lượng cho đầu ra bản dựng" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "Số lượng nguyên dương cần phải điền cho sản phẩm có thể theo dõi" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "Cần nhập số lượng nguyên dương, bởi vì hóa đơn vật liệu chứa sản phẩm có thể theo dõi" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "Số sê-ri" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "Nhập vào số sêri cho đầu ra bản dựng" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "Địa điểm" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "Số sêri tự cấp" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "Tự động cấp số seri phù hợp cho hàng hóa được yêu cầu" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "Số sêri sau đây đã tồn tại hoặc không hợp lệ" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "Danh sách đầu ra bản dựng phải được cung cấp" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "Vị trí kho cho đầu ra phế phẩm" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "Hủy phân bổ" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "Hủy bất kỳ phân kho nào cho đầu ra phế phẩm" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "Lý do loại bỏ đầu ra bản dựng" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "Vị trí cho đầu ra bản dựng hoàn thiện" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "Trạng thái" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "Chấp nhận phân kho dang dở" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "Hoàn hiện đầu ra nếu kho chưa được phân bổ hết chỗ trống" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "Xóa toàn bộ đầu ra chưa hoàn thành" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "Xóa bất kỳ đầu ra bản dựng nào chưa được hoàn thành" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "Chưa được cấp phép" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "Chấp nhận trạng thái tiêu hao bởi đơn đặt bản dựng này" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "Phân bổ trước khi hoàn thiện đơn đặt bản dựng này" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "Kho quá tải" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "Bạn muốn thế nào để xử lý hàng trong kho được gán thừa cho đơn đặt bản dựng" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "Một vài hàng hóa đã được phân bổ quá thừa" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "Chấp nhận chưa phân bổ được" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Chấp nhận hàng hóa không được phân bổ đầy đủ vào đơn đặt bản dựng này" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "Kho được yêu cầu chưa được phân bổ hết không gian" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "Chấp nhận không hoàn thành" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "Chấp nhận số yêu cầu của đầu ra bản dựng chưa được hoàn thành" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "Số lượng bản dựng được yêu cầu chưa được hoàn thành" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "Đơn đặt bản dựng có đầu ra chưa hoàn thiện" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "Lộ giới" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "Đầu ra bản dựng" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "Đầu ra bản dựng phải chỉ đến bản dựng tương ứng" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "Mục chi tiết bản dựng" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part phải trỏ đến phần tương tự của đơn đặt bản dựng" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "Hàng hóa phải trong kho" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Số lượng có sẵn ({q}) đã bị vượt quá" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "Đầu ra bản dựng phải được xác định cho việc phân sản phẩm được theo dõi" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Đầu ra bản dựng không thể chỉ định cho việc phân sản phẩm chưa được theo dõi" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "Hàng hóa phân bổ phải được cung cấp" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Vị trí kho nơi sản phẩm được lấy ra (để trống để lấy từ bất kỳ vị trí nào)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "Ngoại trừ vị trí" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "Không bao gồm hàng trong kho từ vị trí đã chọn này" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "Kho trao đổi" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Hàng trong kho thuộc nhiều vị trí có thể dùng thay thế được cho nhau" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "Kho thay thế" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "Cho phép phân kho sản phẩm thay thế" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "Mục tùy chọn" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "Phân bổ các mục hóa đơn vật liệu tùy chọn đến đơn đặt bản dựng" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "Mã số nhà sản xuất" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "Tên địa điểm" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "ID sản phẩm" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "IPN sản phẩm" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "Số sê-ri" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "Số lượng sẵn có" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "Mô tả sản phẩm" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "Có thể theo dõi" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "Cho phép biến thể" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "Mục BOM" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "Bật đơn hàng" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "Đang sản xuất" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "Số hàng tồn" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "Sản xuất" msgid "Cancelled" msgstr "Đã hủy" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "Hiển thị mã QR" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "Gỡ mã vạch" @@ -1715,14 +1786,14 @@ msgstr "Kho không được phân bổ đầy đủ với yêu cầu bản dựn #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "Đầu ra hoàn thiện" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "Đầu ra hoàn thiện" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "Đơn đặt hàng" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "Phát hành bởi" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "Độ ưu tiên" @@ -1804,8 +1875,8 @@ msgstr "Nguồn kho" msgid "Stock can be taken from any available location." msgstr "Kho có thể được lấy từ bất kỳ địa điểm nào." -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "Đích đến" @@ -1819,11 +1890,11 @@ msgstr "Sản phẩm đã phân bổ" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "Hàng loạt" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "Đã tạo" @@ -1851,13 +1922,13 @@ msgstr "Đã hoàn thành" msgid "Build not complete" msgstr "Xây dựng chưa hoàn thiện" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "Đơn đặt bản dựng con" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "Phân bổ kho đến bản dựng" +msgid "Build Order Line Items" +msgstr "" #: build/templates/build/detail.html:181 msgid "Deallocate stock" @@ -1879,7 +1950,7 @@ msgstr "Tự động phân bổ" msgid "Manually allocate stock to build" msgstr "Chỉ định kho thủ công đến bản dựng" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "Chỉ định kho" @@ -1908,15 +1979,15 @@ msgstr "Tạo đầu ra bản dựng mới" msgid "New Build Output" msgstr "Đầu ra bản dựng mới" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "Kho tiêu thụ" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "Đầu ra bản dựng hoàn thiện" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "Đầu ra bản dựng hoàn thiện" msgid "Attachments" msgstr "Tập tin đính kèm" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "Ghi chép bản dựng" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "Tạo đơn đặt bản dựng" msgid "Build Order Details" msgstr "Chi tiết đơn đặt bản dựng" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "Mục dòng" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "Đầu ra chưa hoàn thiện" @@ -2156,8 +2237,8 @@ msgstr "Mức độ thường xuyên để cập nhật tỉ giá hối đoái ( #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "ngày" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "Bật trường phiên bản cho sản phẩm" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 +msgid "Allow Deletion from Assembly" +msgstr "" + +#: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 msgid "IPN Regex" msgstr "Mẫu IPN" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "Mẫu dùng nhanh phổ biến dành cho tìm IPN sản phẩm" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "Cho phép trùng IPN" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "Cho phép nhiều sản phẩm dùng IPN giống nhau" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "Cho phép sửa IPN" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "Cho phép đổi giá trị IPN khi sửa một sản phẩm" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "Sao chép dữ liệu BOM của sản phẩm" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "Sao chép dữ liệu BOM mặc định khi nhân bản 1 sản phẩm" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "Sao chép dữ liệu tham số sản phẩm" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "Sao chép dữ liệu tham số mặc định khi nhân bản 1 sản phẩm" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "Chép thông tin kiểm thử sản phẩm" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "Sao chép dữ liệu kiểm thử mặc định khi nhân bản 1 sản phẩm" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "Sao chéo mẫu tham số danh mục" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "Sao chéo mẫu tham số danh mục khi tạo 1 sản phẩm" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "Sao chéo mẫu tham số danh mục khi tạo 1 sản phẩm" msgid "Template" msgstr "Mẫu" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "Sản phẩm là mẫu bởi mặc định" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "Lắp ráp" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "Sản phẩm có thể lắp giáp từ thành phần khác theo mặc định" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "Thành phần" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "Sản phẩm có thể được sử dụng mặc định như thành phần phụ" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "Có thể mua" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "Sản phẩm mặc định có thể mua được" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "Có thể bán" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "Sản phẩm mặc định có thể bán được" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "Sản phẩm mặc định có thể theo dõi được" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "Ảo" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "Sản phẩm mặc định là số hóa" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "Hiển thị Nhập liệu trong khung xem" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "Hiển thị đồ thuật nhập dữ liệu trong một số khung nhìn sản phẩm" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "Hiển thị sản phẩm liên quan" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "Hiện sản phẩm liên quan cho 1 sản phẩm" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "Số liệu tồn kho ban đầu" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "Cho phép tạo tồn kho ban đầu khi thêm 1 sản phẩm mới" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "Dữ liệu nhà cung cấp ban đầu" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "Cho phép tạo dữ liệu nhà cung cấp ban đầu khi thêm 1 sản phẩm mới" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "Định dạng tên sản phẩm hiển thị" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "Định dạng để hiển thị tên sản phẩm" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "Biểu tượng mặc định của danh mục sản phẩm" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "Biểu tượng mặc định của danh mục sản phẩm (để trống nghĩa là không có biểu tượng)" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "Bắt buộc đơn vị tham số" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "Nếu đơn vị được cung cấp, giá trị tham số phải phù hợp với các đơn vị xác định" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "Vị trí phần thập phân giá bán tối thiểu" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "Số vị trí thập phân tối thiểu cần hiển thị khi tạo dữ liệu giá" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "Vị trí phần thập phân giá bán tối đa" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "Số vị trí thập phân tối đa cần hiển thị khi tạo dữ liệu giá" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "Sử dụng giá bán nhà cung cấp" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "Bao gồm giá phá vỡ cả nhà cung cấp trong tính toán giá tổng thể" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "Ghi đè lịch sử mua hàng" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "Giá đơn hàng đặt mua trước đó ghi đè giá phá vỡ của nhà cung cấp" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "Sử dụng giá hàng hóa trong kho" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "Dùng giá bán từ dữ liệu kho nhập vào thủ công đối với bộ tính toán giá bán" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "Tuổi giá kho hàng" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "Loại trừ hàng hóa trong kho cũ hơn số ngày ngày từ bảng tính giá bán" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "Sử dụng giá biến thể" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "Bao gồm giá biến thể trong bộ tính toán giá tổng thể" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "Chỉ các biến thể hoạt động" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "Chỉ sử dụng sản phẩm biến thể hoạt động để tính toán giá bán biến thể" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "Tần suất tạo lại giá" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "Số ngày trước khi giá sản phẩm được tự động cập nhật" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "Giá nội bộ" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "Bật giá nội bộ cho sản phẩm" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "Ghi đè giá nội bộ" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "Nếu khả dụng, giá nội bộ ghi đè tính toán khoảng giá" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "Bật in tem nhãn" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "Bật chức năng in tem nhãn từ giao diện web" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "DPI hỉnh ảnh tem nhãn" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Độ phân giải DPI khi tạo tệp hình ảnh để cung cấp cho plugin in ấn tem nhãn" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "Bật báo cáo" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "Cho phép tạo báo cáo" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "Chế độ gỡ lỗi" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "Tạo báo cáo trong chế độ gỡ lỗi (đầu ra HTML)" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "Khổ giấy" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "Kích thước trang mặc định cho báo cáo PDF" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "Bật báo cáo kiểm thử" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "Cho phép tạo báo cáo kiểm thử" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "Đính kèm báo cáo kiểm thử" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Khi in một báo cáo kiểm thử, đính kèm một bản sao của báo cáo kiểm thử với hàng trong kho đã được kết hợp" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "Sê ri toàn cục duy nhất" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "Số sê ri cho hàng trong kho phải là duy nhất trong toàn hệ thống" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "Tự động điền số sê ri" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "Tự động điền số sê ri vào biểu mẫu" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "Xóa kho đã hết hàng" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "Mẫu sinh mã theo lô" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "Mẫu tạo mã theo lô mặc định cho hàng trong kho" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "Quá hạn trong kho" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "Bật chức năng quá hạn tồn kho" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "Bán kho quá hạn" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "Cho phép bán hàng kho quá hạn" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "Thời gian hàng cũ trong kho" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "Số ngày hàng trong kho được xác định là cũ trước khi quá hạn" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "Dựng kho quá hạn" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "Cho phép xây dựng với kho hàng quá hạn" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "Kiểm soát sở hữu kho" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "Bật chức năng kiểm soát sở hữu kho với địa điểm và hàng trong kho" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "Biểu tượng địa điểm kho mặc định" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "Biểu tượng địa điểm kho hàng mặc định (trống nghĩa là không có biểu tượng)" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "Hiển thị hàng hóa đã lắp đặt" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "Hiển thị hàng trong kho đã được lắp đặt trên bảng kho" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "Mã tham chiếu đơn đặt bản dựng" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "Mẫu bắt buộc cho để trường tham chiếu đơn đặt bản dựng" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "Bật đơn hàng trả lại" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "Bật chức năng đơn hàng trả lại trong giao diện người dùng" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "Mẫu tham chiếu đơn hàng trả lại" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "Sửa đơn hàng trả lại đã hoàn thành" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "Cho phép sửa đơn hàng trả lại sau khi đã hoàn thành rồi" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "Mẫu tham chiếu đơn đặt hàng" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "Mẫu bắt buộc để tạo trường tham chiếu đơn đặt hàng" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "Vận chuyển mặc định đơn đặt hàng" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "Cho phép tạo vận chuyển mặc định với đơn đặt hàng" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "Sửa đơn đặt hàng đã hoàn thành" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "Cho phép sửa đơn đặt hàng sau khi đã vận chuyển hoặc hoàn thành" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "Mẫu tham chiếu đơn đặt mua" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "Mẫu bắt buộc cho để trường tham chiếu đơn đặt mua" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "Sửa đơn đặt mua đã hoàn thành" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "Cho phép sửa đơn đặt mua sau khi đã vận chuyển hoặc hoàn thành" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "Tự động hoàn thành đơn đặt mua" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "Bật quên mật khẩu" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "Bật chức năng quên mật khẩu trong trang đăng nhập" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "Bật đăng ký" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "Cho phép người dùng tự đăng ký tại trang đăng nhập" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "Bật SSO" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "Cho phép SSO tại trang đăng nhập" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "Bật đăng ký SSO" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "Cho phép người dùng tự đăng ký SSO tại trang đăng nhập" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "Yêu cầu email" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "Yêu cầu người dùng cung cấp email để đăng ký" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "Người dùng tự động điền SSO" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "Tự động điền thông tin chi tiết từ dữ liệu tài khoản SSO" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "Thư 2 lần" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "Khi đăng ký sẽ hỏi người dùng hai lần thư điện tử của họ" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "Mật khẩu 2 lần" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "Khi đăng ký sẽ hỏi người dùng hai lần mật khẩu của họ" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "Các tên miền được phép" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "Cấm đăng ký với 1 số tên miền cụ thể (dấu phẩy ngăn cách, bắt đầu với dấu @)" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "Nhóm khi đăng ký" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "Bắt buộc MFA" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "Người dùng phải sử dụng bảo mật đa nhân tố." -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "Kiểm tra phần mở rộng khi khởi động" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "Kiểm tra toàn bộ phần mở rộng đã được cài đặt khi khởi dộng - bật trong môi trường ảo hóa" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "Kiểm tra cập nhật plugin" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "Bật tích hợp URL" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "Bật phần mở rộng để thêm định tuyến URL" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "Bật tích hợp điều hướng" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "Bật phần mở rộng để tích hợp thanh định hướng" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "Bật tích hợp ứng dụng" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "Bật phần mở rộng để thêm ứng dụng" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "Cho phép tích hợp lập lịch" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "Bật phẩn mở rộng để chạy các tác vụ theo lịch" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "Bật tích hợp nguồn cấp sự kiện" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "Bật phần mở rộng để trả lời sự kiện bên trong" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "Bật mã dự án" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "Bật mã dự án để theo dõi dự án" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "Chức năng kiểm kê" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "Bật chức năng kiểm kê theo mức độ ghi nhận kho và tính toán giá trị kho" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "Ngoại trừ vị trí bên ngoài" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "Loại trừ hàng trong kho thuộc địa điểm bên ngoài ra khỏi tính toán kiểm kê" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "Giai đoạn kiểm kê tự động" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "Số ngày giữa ghi chép kiểm kê tự động (đặt không để tắt)" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "Khoảng thời gian xóa báo cáo" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "Báo cáo kiểm kê sẽ bị xóa sau số ngày xác định" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "Hiển thị tên đầy đủ của người dùng" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "Hiển thị tên đầy đủ thay vì tên đăng nhập" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "Khóa thiết lập (phải duy nhất - phân biệt hoa thường" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "Ẩn sản phẩm ngừng hoạt động" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "Ẩn sản phẩm bị tắt trong kết quả trình bày tại trang chủ" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "Hiện sản phẩm đã đăng ký" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "Hiện sản phẩm đã đăng ký trên trang chủ" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "Hiện danh mục đã đăng ký" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "Hiện danh mục sản phẩm đã đăng ký trên trang chủ" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "Hiển thị nguyên liệu mới nhất" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "Hiển thị nguyên liệu mới nhất trên trang chủ" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "Hiện BOM chờ xác thực tại trang chủ" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "Hiện thay đổi kho hàng gần đây" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "Hiện hàng trong kho được thay đổi gần nhất trên trang chủ" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "Hiển thị hàng còn ít" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "Hiển thị hàng hóa còn ít tại trang chủ" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "Hiển thị hết hàng" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "Hiển thị hàng hóa đã bán hết tại trang chủ" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "Hiển thị hàng cần thiết" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "Hiện hàng trong kho cần thiết cho xây dựng tại trang chủ" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "Bán kho quá hạn" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "Hiển thị hàng hóa đã quá hạn trên trang chủ" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "Hiện kho hàng ế" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "Hiện hàng trong kho bị ế trên trang chủ" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "Hiện bản dựng chờ xử lý" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "Hiện bản dựng chờ xử lý trên trang chủ" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "Hiện bản dựng quá hạn" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "Hiện bản dựng quá hạn trên trang chủ" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "Hiện PO nổi bật" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "Hiện PO nổi bật trên trang chủ" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "Hiện PO quá hạn" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "Hiện đơn mua hàng quá hạn trên trang chủ" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "Hiện đơn hàng vận chuyển nổi bật" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "Hiện đơn hàng vận chuyển nổi bật tại trang chủ" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "Hiện đơn vận chuyển quá hạn" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "Hiện đơn vận chuyển quá hạn trên trang chủ" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "Hiện đơn vận chuyển chờ xử lý" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "Hiện đơn vận chuyển chờ xử lý trên trang chủ" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "Hiện tin tức" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "Hiện tin tức trên trang chủ" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "Hiển thị nhãn cùng dòng" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "Hiển thị nhãn PDF trong trình duyệt, thay vì tải về dạng tệp tin" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "Máy in tem nhãn mặc định" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "Cấu hình máy in tem nhãn nào được chọn mặc định" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "Hiển thị báo cáo cùng hàng" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "Hiện báo cáo PDF trong trình duyệt, thay vì tải về dạng tệp tin" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "Tìm sản phẩm" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "Hiện hàng hóa trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "Tìm sản phẩm nhà cung cấp" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "Hiện sản phẩm nhà cung cấp trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "Tìm sản phẩm nhà sản xuất" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "Hiện sản phẩm nhà sản xuất trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "Ẩn sản phẩm ngừng hoạt động" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "Loại trừ sản phẩm ngưng hoạt động trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "Tìm kiếm danh mục" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "Hiện danh mục sản phẩm trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "Tìm kiếm kho" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "Hiện hàng hóa ở kho trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "Ẩn hàng hóa trong kho không có sẵn" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "Không bao gồm hàng hóa trong kho mà không sẵn sàng từ màn hình xem trước tìm kiếm" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "Tìm kiếm vị trí" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "Hiện vị trí kho hàng trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "Tìm kiếm công ty" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "Hiện công ty trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "Tìm kiếm đặt hàng xây dựng" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "Hiện đơn đặt xây dựng trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "Tìm kiếm đơn đặt mua" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "Hiện đơn đặt mua trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "Loại trừ đơn đặt mua không hoạt động" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "Loại trừ đơn đặt mua không hoạt động ra khỏi cửa sổ xem trước tìm kiếm" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "Tìm đơn đặt hàng người mua" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "Hiện đơn đặt hàng người mua trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "Loại trừ đơn đặt hàng người mua không hoạt động" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "Không bao gồm đơn đặt hàng người mua không hoạt động trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "Tìm kiếm đơn hàng trả lại" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "Hiện đơn hàng trả lại trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "Loại trừ đơn hàng trả lại không hoạt động" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "Không bao gồm đơn hàng trả lại không hoạt động trong cửa sổ xem trước tìm kiếm" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "Kết quả xem trước tìm kiếm" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "Số kết quả cần hiển thị trong từng phần của cửa sổ xem trước tìm kiếm" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "Tìm kiếm biểu thức" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "Bật tìm kiếm biểu thức chính quy trong câu truy vấn tìm kiếm" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "Tìm phù hợp toàn bộ chữ" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "Truy vấn tìm trả về kết quả phù hợp toàn bộ chữ" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "Hiện số lượng trong biểu mẫu" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "Hiển thị số lượng sản phẩm có sẵn trong một số biểu mẫu" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "Phím escape để đóng mẫu biểu" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "Sử dụng phím escape để đóng mẫu biểu hộp thoại" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "Cố định điều hướng" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "Vị trí thành điều hướng là cố định trên cùng màn hình" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "Định dạng ngày" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "Định dạng ưa chuộng khi hiển thị ngày" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Lập lịch sản phẩm" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "Hiển thị thông tin lịch sản phẩm" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "Kiểm kê sản phẩm" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "Hiển thị thông tin kiểm kê sản phẩm (nếu chức năng kiểm kê được bật)" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "Độ dài chuỗi trong bảng" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "Giới hạn độ dài tối đa cho chuỗi hiển thị trong kiểu xem bảng biểu" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "Nhận báo cáo lỗi" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "Nhận thông báo khi có lỗi hệ thống" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "Người dùng" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "Số lượng giá phá vỡ" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "Giá" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "Đơn vị giá theo số lượng cụ thể" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "Đầu mối" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "Đầu mối tại điểm webhook được nhận" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "Tên của webhook này" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "Webhook có hoạt động không" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "Chữ ký số" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "Chữ ký số để truy cập" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "Bí mật" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "Mã bí mật dùng chung cho HMAC" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "Mã Tin nhắn" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "Định danh duy nhất cho tin nhắn này" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "Máy chủ" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "Mãy chủ từ tin nhắn này đã được nhận" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "Đầu mục" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "Đầu mục tin nhắn" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "Thân" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "Thân tin nhắn này" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "Đầu mối của tin nhắn này đã nhận được" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "Làm việc vào" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "Công việc trong tin nhắn này đã kết thúc?" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "Mã" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "Tiêu đề" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "Liên kết" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "Đã công bố" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "Tác giả" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "Tóm tắt" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "Đọc" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "Tin này đã được đọc?" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "Tin này đã được đọc?" msgid "Image" msgstr "Hình ảnh" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "Tệp ảnh" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "Tên đơn vị phải là một định danh hợp lệ" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "Tên đơn vị" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "Biểu tượng" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "Biểu tượng đơn vị tùy chọn" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "Định nghĩa" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "Định nghĩa đơn vị" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "Đính kèm" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "Tập tin bị thiếu" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "Thiếu liên kết bên ngoài" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "Chọn file đính kèm" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "Bình luận" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "Ghi chú nội bộ sử dụng cho chuyển phát nhanh" msgid "Link to address information (external)" msgstr "Liên kết thông tin địa chỉ (bên ngoài)" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "Sản phẩm nhà sản xuất" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "Sản phẩm cơ bản" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "Chọn sản phẩm" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "Chọn sản phẩm" msgid "Manufacturer" msgstr "Nhà sản xuất" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "Chọn nhà sản xuất" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "URL cho liên kết sản phẩm của nhà sản xuất bên ngoài" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "Mô tả sản phẩm của nhà sản xuất" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "Tên tham số" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "Giá trị" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "Giá trị tham số" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "Đơn vị" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "Đơn vị tham số" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "Sản phẩm nhà cung cấp" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "Đơn vị đóng gói phải tương thích với đơn vị sản phẩm cơ bản" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "Đơn vị đóng gói phải lớn hơn không" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "Sản phẩm nhà sản xuất đã liên kết phải tham chiếu với sản phẩm cơ bản tương tự" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "Nhà cung cấp" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "Chọn nhà cung cấp" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "Đơn vị quản lý kho nhà cung cấp" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "Chọn sản phẩm của nhà sản xuất" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "URL cho liên kết sản phẩm của nhà cung cấp bên ngoài" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "Mô tả sản phẩm nhà cung cấp" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "Ghi chú" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "chi phí cơ sở" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "Thu phí tối thiểu (vd: phí kho bãi)" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "Đóng gói" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "Đóng gói sản phẩm" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "Số lượng gói" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "Tổng số lượng được cung cấp trong một gói đơn. Để trống cho các hàng hóa riêng lẻ." -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "nhiều" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "Đặt hàng nhiều" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "Số lượng có sẵn từ nhà cung cấp" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "Sẵn hàng đã được cập nhật" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "Ngày cập nhật cuối thông tin tồn kho" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "Tiền tệ mặc định được sử dụng cho nhà cung cấp này" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "Còn hàng" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "Không hoạt động" @@ -4430,16 +4526,16 @@ msgstr "Tải hình ảnh từ URL" msgid "Delete image" msgstr "Xóa ảnh" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "Khách hàng" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "Điện thoại" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "Xoá hình ảnh" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "Xóa hình ảnh gắn với công ty này" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "Xóa" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "Tải hình lên" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "Tải ảnh xuống" @@ -4628,7 +4724,7 @@ msgstr "Xóa sản phẩm của nhà sản xuất" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "Sản phẩm nội bộ" @@ -4638,7 +4734,7 @@ msgstr "Chưa có thông tin nhà sản xuất" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "Thông số" msgid "New Parameter" msgstr "Tham số mới" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "Thêm thông số" @@ -4724,12 +4824,12 @@ msgstr "Xóa sản phẩm nhà cung cấp" msgid "No supplier information available" msgstr "Chưa có thông tin nhà cung cấp" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "Thêm mới hàng trong kho" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "Hàng trong kho mới" @@ -4762,29 +4862,33 @@ msgstr "Thông tin giá cả" msgid "Add Price Break" msgstr "Thêm giá phá vỡ" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "Mã QR sản phẩm nhà cung cấp" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "Liên kết mã vạch đến hàng hóa nhà cung cấp" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "Cập nhật độ sẵn sàng sản phẩm" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "Hàng trong kho" @@ -4822,83 +4926,91 @@ msgstr "Đã đặt" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "Dữ liệu" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "Hợp lệ" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "Không rõ" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "Tổng tiền" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "Không tìm thấy đơn đặt mua phù hợp" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "Đặt hàng" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "Đơn hàng" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "Đơn hàng trả lại" @@ -5158,7 +5286,7 @@ msgstr "Mô tả đơn đặt (tùy chọn)" msgid "Select project code for this order" msgstr "Mã dự án đã chọn cho đơn đặt hàng này" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "Liên kết đến trang bên ngoài" @@ -5182,11 +5310,11 @@ msgstr "Đầu mối liên hệ của đơn đặt này" msgid "Company address for this order" msgstr "Địa chỉ công ty cho đơn đặt này" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "Mã đặt hàng" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "Trạng thái đơn đặt mua" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "Doanh nghiệp từ những hàng hóa đang được đặt mua" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "Tham chiếu nhà cung cấp" @@ -5207,15 +5335,15 @@ msgstr "Mã tham chiếu đơn đặt nhà cung cấp" msgid "received by" msgstr "nhận bởi" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "Ngày phát hành" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "Ngày đặt hàng đã phát hành" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "Ngày đặt hàng đã được hoàn thiện" @@ -5223,501 +5351,501 @@ msgstr "Ngày đặt hàng đã được hoàn thiện" msgid "Part supplier must match PO supplier" msgstr "Nhà cung cấp sản phẩm phải trùng với nhà cung cấp PO" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "Số lượng phải là số dương" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "Doanh nghiệp từ những hàng hóa đang được bán" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "Tham chiếu khách hàng " -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "Mã tham chiếu đơn đặt của khách hàng" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "Ngày giao hàng" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "vận chuyển bằng" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "Những đơn hàng đang mở thì sẽ được đánh dấu là hoàn thành" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "Đơn hàng không thể hoàn thành được vì vận chuyển chưa xong" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "Đơn hàng không thể hoàn thành được vì những khoản riêng chưa xong" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "Số lượng mặt hàng" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "Tham chiếu khoản riêng" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "Ghi chú khoản riêng" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "Ngày mục tiêu cho khoản riêng này (để trống để sử dụng ngày mục tiêu từ đơn đặt)" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "Mô tả khoản riêng (tùy chọn)" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "Ngữ cảnh" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "Ngữ cảnh bổ sung" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "Đơn giá" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "Sản phẩm nhà cung cấp phải phù hợp với nhà cung cung cấp" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "đã bị xóa" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "Sản phẩm nhà cung cấp" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "Đã nhận" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "Số mục đã nhận" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "Giá mua" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "Giá đơn vị mua" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "Có phải người mua hàng muốn mặt hàng này được tích trữ?" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "Không thể gán sản phẩm ảo vào trong đơn đặt bán hàng" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "Chỉ có thể gán sản phẩm có thể bán vào đơn đặt bán hàng" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "Giá bán" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "Giá bán đơn vị" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "Đã chuyển" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "Số lượng đã vận chuyển" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "Ngày vận chuyển" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "Ngày giao hàng" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "Ngày giao hàng của vận chuyển" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "Kiểm tra bởi" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "Người dùng đã kiểm tra vận chuyển này" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "Vận chuyển" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "Mã vận chuyển" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "Số theo dõi" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "Thông tin theo dõi vận chuyển" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "Mã hóa đơn" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "Số tham chiếu liên kết với hóa đơn" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "Vận đơn đã được gửi đi" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "Vận đơn chưa có hàng hóa được phân bổ" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "Hàng trong kho chưa được giao" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "Không thể phân bổ hàng hóa vào cùng với dòng với sản phẩm khác" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "Không thể phân bổ hàng hóa vào một dòng mà không có sản phẩm nào" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "Số lượng phân bổ không thể vượt quá số lượng của kho" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "Số lượng phải là 1 cho hàng hóa sêri" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "Đơn bán hàng không phù hợp với vận đơn" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "Vận đơn không phù hợp với đơn bán hàng" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "Dòng" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "Tham chiếu vận đơn của đơn hàng bán" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "Hàng hóa" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "Chọn hàng trong kho để phân bổ" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "Nhập số lượng phân kho" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "Tham chiếu đơn hàng trả lại" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "Công ty có hàng hóa sẽ được trả lại" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "Trạng thái đơn hàng trả lại" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "Chỉ hàng hóa thêo sêri mới có thể được gán vào đơn hàng trả lại" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "Chọn hàng hóa để trả lại từ khách hàng" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "Ngày nhận được" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "Ngày mà hàng hóa trả lại đã được nhận" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "Kết quả" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "Kết quả cho hàng hóa dòng này" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "Chi phí gắn với hàng trả lại hoặc sửa chữa cho dòng hàng hóa này" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "Mục dòng" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "Đơn đặt không thể bị hủy" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "Cho phép đơn đặt phải đóng lại cùng với các mục dòng hàng hóa chưa hoàn thành" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "Đơn đặt có dòng hàng hóa chưa hoàn thành" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "Đơn đặt là không được mở" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "Tiền tệ giá mua" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "Mã sản phẩm nội bộ" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "Sản phẩm nhà cung cấp phải được chỉ định" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "Đơn đặt mua phải được chỉ định" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "Nhà cung cấp phải phù hợp với đơn đặt mua" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "Đơn đặt mua phải phù hợp với nhà cung cấp" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "Mục dòng" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "Mục dòng không phù hợp với đơn đặt mua" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "Chọn vị trí đích cho hàng hóa đã nhận" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "Nhập mã lô cho hàng trong kho đang đến" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "Nhập số sê ri cho hàng trong kho đang đến" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "Mã vạch" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "Mã vạch đã quét" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "Mã vạch đã được dùng" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "Cần điền số nguyên cho sản phẩm có thể theo dõi" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "Dòng hàng hóa phải được cung cấp" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "Vị trí đích phải được chỉ ra" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "Giá trị mã vạch đã cung cấp phải duy nhất" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "Tiền tệ giá bán" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "Chưa cung cấp thông tin vận chuyển" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "Dòng hàng hóa chưa được gắn với đơn đặt này" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "Số lượng phải là số dương" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "Nhập số sê ri để phân bổ" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "Vận đơn đã được chuyển đi" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "Vận đơn không được gắn với đơn đặt này" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "Không tìm thấy số sê ri sau đây" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "Những số sê ri sau đây đã được phân bổ" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "Dòng riêng biệt đơn hàng trả lại" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "Line item không phù hợp với đơn hàng trả lại" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "Line item đã nhận được" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "Hàng hóa chỉ có thể được nhận theo đơn hàng đang trong tiến trình" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "Tiền tệ giá đồng hạng" @@ -5927,13 +6055,13 @@ msgstr "Lựa chọn trùng lặp" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Xóa hàng" @@ -6047,8 +6175,8 @@ msgstr "Mã khách hàng" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "Vận chuyển đang chờ xử lý" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "Chức năng" @@ -6143,30 +6272,21 @@ msgstr "Cập nhật {part} giá đơn vị đến {price}" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "Cập nhật {part} giá đơn vị đến {price} và số lượng đến {qty}" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "ID sản phẩm" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "Mô tả sản phẩm" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "Phiên bản" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "Từ khóa" @@ -6178,7 +6298,7 @@ msgstr "Ảnh sản phẩm" msgid "Category ID" msgstr "ID danh mục" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "Tên danh mục" @@ -6191,11 +6311,11 @@ msgstr "ID vị trí mặc định" msgid "Default Supplier ID" msgstr "ID nhà cung ứng mặc định" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "Biến thể của" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "Kho tối thiểu" @@ -6203,19 +6323,19 @@ msgstr "Kho tối thiểu" msgid "Used In" msgstr "Sử dụng trong" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "Đang dựng" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "Chi phí tối thiểu" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "Chi phí tối đa" @@ -6232,14 +6352,14 @@ msgstr "Tên cha" msgid "Category Path" msgstr "Đưỡng dẫn danh mục" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "Nguyên liệu" @@ -6256,13 +6376,13 @@ msgstr "ID hàng hóa BOM" msgid "Parent IPN" msgstr "IPN cha" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "Giá thấp nhất" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "Xác minh toàn bộ hóa đơn vật liệu" msgid "This option must be selected" msgstr "Tùy chọn này phải được chọn" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "Danh mục" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "Điểm bán mặc định" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "Tổng số lượng" @@ -6375,753 +6504,784 @@ msgstr "Tổng số lượng" msgid "Input quantity for price calculation" msgstr "Số lượng đầu ra cho tính toán giá bán" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Danh mục sản phẩm" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "Danh mục sản phẩm" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "Vị trí mặc định cho sản phẩm trong danh mục này" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "Cấu trúc" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "Hàng hóa không được gán trực tiếp vào danh mục có cấu trúc nhưng có thể được gán vào danh mục con." -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "Từ khóa mặc định" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "Từ khóa mặc định cho sản phẩm trong danh mục này" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "Biểu tượng" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "Biểu tượng (tùy chọn)" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "Bạn không thể thay đổi cấu trúc nhóm sản phẩm này vì một số sản phẩm đã được gắn với nó rồi!" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "Lựa chọn sai cho sản phẩm cha" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "Không thể dùng sản phẩm '{self}' trong BOM cho '{parent}' (đệ quy)" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "Sản phẩm '{parent}' được dùng trong BOM cho '{self}' (đệ quy)" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "IPN phải phù hợp mẫu biểu thức chính quy {pattern}" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "Hàng trong kho với số sê ri này đã tồn tại" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN trùng lặp không được cho phép trong thiết lập sản phẩm" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "Sản phẩm với Tên, IPN và Duyệt lại đã tồn tại." -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "Sản phẩm không thể được phân vào danh mục sản phẩm có cấu trúc!" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "Tên sản phẩm" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "Là Mẫu" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "Sản phẩm này có phải là sản phẩm mẫu?" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "Đây có phải là 1 biến thể của sản phẩm khác?" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "Mô tả (không bắt buộc)" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "Từ khóa sản phẩm để cải thiện sự hiện diện trong kết quả tìm kiếm" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "Danh mục sản phẩm" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "Số phiên bản hoặc bản duyệt lại sản phẩm" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "Hàng hóa này sẽ được cất vào đâu?" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "Nhà cung ứng mặc định" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "Nhà cung ứng sản phẩm mặc định" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "Hết hạn mặc định" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "Thời gian hết hạn (theo ngày) để nhập kho hàng hóa cho sản phẩm này" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "Cấp độ kho tối thiểu được phép" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "Đơn vị đo cho sản phẩm này" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "Sản phẩm này có thể được dựng từ sản phẩm khác?" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "Sản phẩm này có thể dùng để dựng các sản phẩm khác?" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "Sản phẩm này có đang theo dõi cho hàng hóa duy nhất?" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "Sản phẩm này có thể mua được từ nhà cung ứng bên ngoài?" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "Sản phẩm này có thể được bán cho khách hàng?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "Sản phẩm này đang hoạt động?" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "Đây là sản phẩm ảo, ví dụ như sản phẩm phần mềm hay bản quyền?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "Giá trị tổng kiểm BOM" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "Giá trị tổng kiểm BOM đã được lưu" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "BOM kiểm tra bởi" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "Ngày kiểm tra BOM" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "Tạo người dùng" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "Trách nhiệm chủ sở hữu cho sản phẩm này" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "Kiểm kê cuối cùng" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "Bán nhiều" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "Tiền được dùng để làm đệm tính toán giá bán" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "Chi phí BOM tối thiểu" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "Chi phí thành phần sản phẩm tối thiểu" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "Chi phí BOM tối đa" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "Chi phí thành phần sản phẩm tối đa" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "Chi phí mua vào tối thiểu" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "Chi phí mua vào tối thiểu trong lịch sử" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "Chi phí mua tối đa" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "Chi phí thành phần sản phẩm tối đa trong lịch sử" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "Giá nội bộ tối thiểu" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "Chi phí tối thiểu dựa trên phá vỡ giá nội bộ" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "Giá nội bộ tối đa" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "Chi phí tối đa dựa trên phá vỡ giá nội bộ" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "Giá nhà cung ứng tối thiểu" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "Giá sản phẩm tối thiểu từ nhà cung ứng bên ngoài" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "Giá nhà cung ứng tối đa" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "Giá sản phẩm tối đã từ nhà cung ứng bên ngoài" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "Giá trị biến thể tối thiểu" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "Chi phí tối thiểu của sản phẩm biến thể đã tính" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "Chi phí biến thể tối đa" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "Chi phí tối đa của sản phẩm biến thể đã tính" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "Ghi đề chi phí tối thiểu" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "Ghi đề chi phí tối đa" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "Chi phí tối thiểu tính toán tổng thể" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "Chi phí tối đa tính toán tổng thể" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "Giá bán thấp nhất" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "Giá bán tối thiểu dựa trên phá giá" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "Giá bán cao nhất" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "Giá bán cao nhất dựa trên phá giá" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "Chi phí bán hàng tối thiểu" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "Giá bán hàng tối thiểu trong lịch sử" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "Giá bán hàng tối đa" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "Giá bán hàng tối đa trong lịch sử" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "Sản phẩm dành cho kiểm kê" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "Tổng số hàng" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "Số mục kho độc lậo tại thời điểm kiểm kê" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "Tống số kho tại thời điểm kiểm kê" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "Ngày" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "Kiểm kê đã thực hiện" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "Ghi chú bổ sung" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "Người dùng đã thực hiện đợt kiểm kê này" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "Chi phí kho tối thiểu" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "Chi phí kho tối thiểu ước tính của kho đang có" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "Chi phí kho tối đa" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "Chi phí kho tối đa ước tính của kho đang có" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "Báo cáo" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "Tệp báo cáo kiểm kê (được sinh nội bộ)" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "Bộ đếm sản phẩm" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "Số sản phẩm đã được bao quát bởi kiểm kê" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "Người dùng đã yêu cầu báo cáo kiểm kê này" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "Lựa chọn phải duy nhất" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "Chỉ có thể tạo mẫu kiểm thử cho sản phẩm có thể theo dõi" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "Tên kiểm thử" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "Nhập tên cho kiểm thử" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "Mô tả kiểm thử" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "Nhập mô tả cho kiểm thử này" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "Đã bật" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "Bắt buộc" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "Kiểm thử này bắt buộc phải đạt?" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "Giá trị bắt buộc" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "Kiểm thử này yêu cầu 1 giá trị khi thêm một kết quả kiểm thử?" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "Yêu cầu đính kèm" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "Kiểm thử này yêu cầu tệp đính kèm khi thêm một kết quả kiểm thử?" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "Lựa chọn" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "Tham số hộp kiểm tra không thể có đơn vị" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "Tham số hộp kiểm tra không thể có lựa chọn" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "Tên tham số mẫu phải là duy nhất" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "Tên tham số" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "Đơn vị vật lý cho tham số này" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "Mô tả tham số" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "Ô lựa chọn" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "Tham số này có phải là hộp kiểm tra?" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "Lựa chọn hợp lệ từ tham số này (ngăn cách bằng dấu phẩy)" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "Lựa chọn sai cho giá trị tham số" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "Sản phẩm cha" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "Mẫu tham số" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "Giá trị tham số" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "Giá trị mặc định" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "Giá trị tham số mặc định" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "Tên hoặc mã sản phẩm" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "Giá trị mã sản phẩm duy nhất" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "Giá trị IPN sản phẩm" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "Cấp độ" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "Cấp độ BOM" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "Chọn sản phẩm cha" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "Sản phẩm phụ" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "Chọn sản phẩm được dùng trong BOM" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "Số lượng BOM cho mục BOM này" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "Mục BOM này là tùy chọn" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "Mục BOM này bị tiêu hao (không được theo dõi trong đơn đặt bản dựng)" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Dư thừa" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Số lượng bản dựng lãng phí ước tính (tuyệt đối hoặc phần trăm)" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "Tham chiếu mục BOM" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "Ghi chú mục BOM" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "Giá trị tổng kiểm" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "Giá trị tổng kiểm dòng BOM" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "Đã xác minh" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "Mục BOM này là hợp lệ" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "Nhận thừa hưởng" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Mục BOM này được thừa kế bởi BOM cho sản phẩm biến thể" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "Cho phép biến thể" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Hàng trong kho cho sản phẩm biến thể có thể được dùng bởi mục BOM này" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "Số lượng phải là giá trị nguyên dùng cho sản phẩm có thể theo dõi được" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "Sản phẩm phụ phải được chỉ định" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "Sảm phẩm thay thế mục BOM" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "Sản phẩm thay thế không thể giống sản phẩm chủ đạo" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "Hàng hóa BOM cha" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "Sản phẩm thay thế" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "Sản phẩm 1" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "Sản phẩm 2" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "Chọn sản phẩm liên quan" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "Không thể tạo mối quan hệ giữa một sản phẩm và chính nó" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "Đã tồn tại mối quan hệ trùng lặp" @@ -7129,7 +7289,7 @@ msgstr "Đã tồn tại mối quan hệ trùng lặp" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "Loại tiền mua hàng của hàng hóa này" @@ -7155,303 +7315,312 @@ msgstr "Loại tiền mua hàng của hàng hóa này" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "Chưa chọn sản phẩm" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "Chọn danh mục" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "Sản phẩm gốc" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "Chọn sản phẩm gốc để nhân bản" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "Sao chép ảnh" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "Sao chép hình ảnh từ sản phẩm gốc" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "Sao chép BOM" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "Sao chép định mức nguyên vật liệu từ sản phẩm gốc" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "Sao chép thông số" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "Sao chép thông tin tham số từ sản phẩm gốc" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "Sao chép ghi chú" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "Sao chép ghi chú từ sản phẩm gốc" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "Số liệu tồn kho ban đầu" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "Chỉ ra số lượng tồn kho ban đầu cho sản phẩm. Nếu điền là không, không thêm kho nào." -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "Vị trí kho ban đầu" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "Chỉ định vị trí kho ban đầu cho sản phẩm này" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "Chọn nhà cung cấp (hoặc để trống để bỏ qua)" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "Chọn nhà sản xuất (hoặc để trống để bỏ qua)" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "Mã số nhà sản xuất" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "Công ty đã chọn không phải là nhà cung ứng hợp lệ" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "Công ty đã chọn không phải là nhà sản xuất hợp lệ" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "Mã số nhà sản xuất khớp với MPN này đã tồn tại" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "Mã số nhà cung cấp khớp với SKU này đã tồn tại" -#: part/serializers.py:864 +#: part/serializers.py:893 +msgid "Revisions" +msgstr "" + +#: part/serializers.py:898 msgid "Unallocated Stock" msgstr "" -#: part/serializers.py:867 +#: part/serializers.py:901 msgid "Variant Stock" msgstr "" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "Nhân bản sản phẩm" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "Sao chép dữ liệu ban đầu từ sản phẩm khác" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "Số liệu kho ban đầu" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "Tạo sản phẩm với số lượng tồn kho ban đầu" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "Thông tin nhà cung cấp" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "Thêm thông tin nhà cung cấp ban đầu cho sản phẩm này" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "Sao chép thông số nhóm hàng" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "Sao chép mẫu tham số từ nhóm sản phẩm được chọn" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "Ảnh hiện có" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "Tên tệp của ảnh sản phẩm hiện hữu" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "Tệp hình ảnh không tồn tại" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "Hạn chế báo cáo kiểm kê với sản phẩm riêng biệt và sản phẩm biến thể bất kỳ" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "Hạn chế báo cáo kiểm kê với danh mục sản phẩm riêng biệt và danh mục con bất kỳ" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "Hạn chế báo cáo kiểm kê với vị trí kho riêng biệt và vị trí con bất kỳ" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "Ngoại trừ kho bên ngoài" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "Loại trừ hàng trong kho của vị trí bên ngoài" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "Tạo báo cáo" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "Tạo tệp báo cáo chứa dữ liệu kiểm kê đã tính toán" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "Cập nhật sản phẩm" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "Cập nhật sản phẩm cụ thể với dữ liệu kiểm kê đã tính" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "Chức năng kiểm kê chưa được bật" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "Giá trị tính toán ghi đè cho giá tối thiểu" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "Tiền tế giá tối thiểu" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "Giá trị tính toán ghi đè cho giá tối đa" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "Tiền tế giá tối đa" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "Cập nhật" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "Cập nhật giá cho sản phẩm này" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "Không thể chuyển đổi từ tiền tệ đã cung cấp cho {default_currency}" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "Giá tối thiểu không được lớn hơn giá tối đa" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "Giá tối đa không được nhỏ hơn giá tối thiểu" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "Có thể dựng" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "Chọn sản phẩm để sao chép định mức nguyên vật liệu" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "Xóa dữ liệu đã tồn tại" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "Xóa mục BOM đã tồn tại trước khi sao chép" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "Bao gồm thừa hưởng" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "Bao gồm mục BOM được thừa hưởng từ sản phẩm mẫu" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "Bỏ qua dòng không hợp lệ" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "Bật tùy chọn này để bỏ qua dòng không hợp lệ" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "Sao chép sản phẩm thay thế" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "Sao chép sản phẩm thay thế khi nhân bản hàng hóa BOM" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "Dọn dẹp BOM đang tồn tại" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "Xóa mục BOM đang tồn tại trước khi tải lên" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "Chưa chỉ ra cột sản phẩm" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "Tìm thấy nhiều sản phẩm phù hợp" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "Không tìm thấy sản phẩm nào" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "Sản phẩm không được chỉ định như là một thành phần" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "Chưa cung cấp số lượng" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "Số lượng không hợp lệ" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "Buộc phải nhập ít nhất một mục BOM" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "Tổng số lượng" @@ -7603,7 +7772,7 @@ msgstr "Thêm thông tin kiểm kê" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "Kiểm kê" @@ -7790,7 +7959,7 @@ msgstr "Đếm kho sản phẩm" msgid "Transfer part stock" msgstr "Chuyển kho sản phẩm" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "Chức năng sản phẩm" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "Sản phẩm là ảo (không phải sản phẩm vật lý)" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "Chi tiết giá sản phẩm" @@ -7853,51 +8022,47 @@ msgstr "Phân bổ đến đơn đặt bản dựng" msgid "Allocated to Sales Orders" msgstr "Phân bổ đến đơn bán hàng" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "Có thể dựng" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "Cấp kho tối thiểu" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "Khoảng giá" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "Số seri mới nhất" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "Tìm kiếm cho số sê ri" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "Mã QR sản phẩm" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "Liên kết mã vạch đến sản phẩm" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "Tính toán" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "Xóa ảnh gắn kết với sản phẩm này" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "Không tìm thấy hình ảnh phù hợp" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "Ẩn chi tiết sản phẩm" @@ -7955,9 +8120,9 @@ msgstr "Biến thể" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "Kiện hàng" @@ -8003,7 +8168,7 @@ msgstr "Sửa" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "Cập nhật lần cuối" @@ -8076,8 +8241,8 @@ msgstr "Cập nhập giá bán" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "Hết hàng" @@ -8155,7 +8320,7 @@ msgstr "Không tìm thấy ảnh sản phẩm" msgid "Part Pricing" msgstr "Định giá sản phẩm" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "Đã tìm thấy dữ liệu mã vạch phù hợp" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "Mã vạch phù hợp với hàng hóa hiện có" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "Kho không đủ hạn mức khả dụng" @@ -8345,7 +8510,7 @@ msgstr "Cung cấp hỗ trợ gốc cho mã vạch" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "Cung cấp hỗ trợ gốc để in nhãn PDF" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "Chế độ gỡ lỗi" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "Bật chế độ gỡ lỗi - trả về mã HTML thuần thay vì PDF" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "Khổ giấy cho tờ nhãn" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "Bỏ qua nhãn" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "Bỏ qua số nhãn này khi in tờ nhãn" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "Viền" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "In một viền xung quanh từng nhãn" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "Ngang" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "In tờ viền theo khổ giấy nằm ngang" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "Máy in tờ nhãn InvenTree" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "Sắp xếp nhiều nhãn trong một tờ đơn" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "Nhãn quá lớn so với khổ giấy" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "Chưa tạo nhãn nào" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "Chưa cung cấp đối tượng hợp lệ cho bản mẫu" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "Nhà cung cấp đã bị xóa" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "Đơn giá" @@ -9006,26 +9173,11 @@ msgstr "Bảng liệt kê mở rộng" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "Tổng cộng" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "Số sê-ri" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "Mục vị trí kho hàng" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "Kết quả kiểm tra" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "Thử nghiệm" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "Kết quả" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "Không có kết quả" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "Mục đã cài đặt" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "Sê-ri" @@ -9127,7 +9279,7 @@ msgstr "Tên nhà cung cấp" msgid "Customer ID" msgstr "ID Khách hàng" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "Đã cài đặt trong" @@ -9152,9 +9304,9 @@ msgstr "Cần xem xét" msgid "Delete on Deplete" msgstr "Xóa khi thiếu hụt" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "Ngày hết hạn" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "Ngày hết hạn trước đó" msgid "Expiry date after" msgstr "Ngày hết hạn sau đó" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "Loại vị trí kho hàng" msgid "Default icon for all locations that have no icon set (optional)" msgstr "Biểu tượng mặc định cho vị trí không được đặt biểu tượng (tùy chọn)" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "Kho hàng" msgid "Stock Locations" msgstr "Vị trí kho hàng" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "Chủ sở hữu" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "Chọn chủ sở hữu" @@ -9257,7 +9409,7 @@ msgstr "Chọn chủ sở hữu" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "Không thể đưa trực tiếp hàng trong kho vào bên trong vị trí kho hàng có cấu trúc, nhưng có thể đặt vào kho con." -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "Bên ngoài" @@ -9266,7 +9418,7 @@ msgstr "Bên ngoài" msgid "This is an external stock location" msgstr "Đây là vị trí kho bên ngoài" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "Loại vị trí" @@ -9283,7 +9435,7 @@ msgstr "Bạn không thể chuyển đổi vị trí kho hàng này thành cấu msgid "Stock items cannot be located into structural stock locations!" msgstr "Không thể đặt hàng trong kho vào trong địa điểm kho có cấu trúc!" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "Không thể tạo hàng hóa trong kho cho sản phẩm ảo" @@ -9300,236 +9452,236 @@ msgstr "Số lượng phải là 1 cho hàng hóa với số sê ri" msgid "Serial number cannot be set if quantity greater than 1" msgstr "Số sê ri không thể đặt được nếu số lượng lớn hơn 1" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "Hàng hóa không thể thuộc về chính nó" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "Hàng hóa phải có 1 tham chiếu bản dựng nếu is_building=True" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "Tham chiếu bản dựng không thể trỏ vào cùng một đối tượng sản phẩm" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "Hàng trong kho cha" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "Sản phẩm cơ bản" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "Chọn sản phẩm nhà cung cấp khớp với hàng hóa trong kho này" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "Hàng trong kho này được đặt ở đâu?" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "Đóng gói hàng hóa này được lưu trữ lại" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "Mục này đã được cài đặt trong mục khác?" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "Số sê ri cho mục này" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "Mã lô cho hàng trong kho này" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "Số lượng tồn kho" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "Bản dựng nguồn" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "Bản dựng cho hàng hóa này" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "Tiêu thụ bởi" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "Đơn đặt bản dựng đã dùng hàng hóa này" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "Đơn đặt mua nguồn" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "Đơn đặt mua cho hàng hóa này" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "Đơn hàng bán đích" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Ngày hết hạn của hàng hóa này. Kho sẽ được nhắc tình trạng hết hạn sau ngày này" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "Xóa khi thiếu hụt" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "Xóa hàng trong kho này khi kho hàng bị thiếu hụt" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "Giá mua riêng lẻ tại thời điểm mua" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "Đã chuyển đổi sang sản phẩm" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "Chưa đặt sản phẩm thành có thể theo dõi" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "Số lượng phải là số nguyên" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "Số lượng không thể vượt quá số lượng trong kho đang có ({self.quantity})" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "Số sêri phải là một danh sách dãy số nguyên" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "Số lượng không khớp với số sêri" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "Số sêri đã tồn tại" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "Hàng trong kho đã được gán vào đơn hàng bán" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "Hàng trong kho đã được cài đặt vào hàng hóa khác" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "Hàng trong kho chứa hàng hóa khác" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "Hàng trong kho đã được gắn với một khách hàng" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "Hàng trong kho hiện đang sản xuất" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "Không thể hợp nhất kho nối tiếp" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "Mặt hàng trùng lặp" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "Mặt hàng phải tham chiếu đến sản phẩm tương tự" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "Mặt hàng phải tham chiếu đến sản phẩm nhà cung cấp tương tự" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "Mã trạng thái kho phải phù hợp" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "Không thể xóa mặt hàng không ở trong kho" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "Ghi chú đầu vào" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "Phải cung cấp giá trị cho kiểm thử này" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "Phải tải liên đính kèm cho kiểm thử này" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "Kết quả kiểm thử" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "Giá trị đầu ra kiểm thử" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "Đính kèm kết quả kiểm thử" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "Ghi chú kiểm thử" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "Số sêri quá lớn" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "Mục cha" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "Sử dụng kích thước đóng gói khi thêm: Số lượng được định nghĩa là số của gói" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "Đã hết hạn" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "Mục con" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "Giá mua của mặt hàng, theo đơn vị hoặc gói" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "Nhập số của mặt hàng cần tạo số nối tiếp" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "Số lượng phải không vượt quá số lượng trong kho đang có ({q})" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "Điền số sêri cho hàng hóa mới" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "Vị trí kho đích" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "Trường ghi chú tùy chọn" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "Không thể gán số sêri cho sản phẩm này" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "Chọn mặt hàng để lắp đặt" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "Số lượng để cài đặt" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "Nhập số lượng hàng hóa để cài đặt" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "Thêm ghi chú giao dịch (tùy chọn)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "Số lượng cần cài đặt phải ít nhất là 1" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "Mặt hàng không khả dụng" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "Sản phẩm đã chọn không có trong hóa đơn vật liệu" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "Số lượng cần lắp đặt phải không vượt quá số lượng đang có" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "Vị trí đích cho hàng hóa bị gỡ bỏ" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "Chọn sản phẩm để chuyển đổi mặt hàng vào bên trong" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "Sản phẩm đã chọn không phải là tùy chọn hợp lệ để chuyển đổi" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "Không thể chuyển đổi hàng hóa với sản phẩm nhà cung cấp đã gán" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "Vị trí đích dành cho hàng hóa trả lại" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "Chọn mặt hàng để đổi trạng thái" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "Không có mặt hàng nào được chọn" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Kho phụ" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "Sản phẩm phải có thể bán được" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "Hàng hóa được phân bổ đến một đơn hàng bán" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "Hàng hóa được phân bổ đến một đơn đặt bản dựng" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "Khách hàng được gán vào các mặt hàng" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "Công ty đã chọn không phải là khách hàng" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "Ghi chú phân bổ kho" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "Phải cung cấp danh sách mặt hàng" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "Ghi chú gộp kho" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "Cho phép nhiều nhà cung không khớp" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "Cho phép mặt hàng cùng sản phẩm nhà cung cấp khác phải được gộp" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "Cho phép trạng thái không khớp" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "Cho phép mặt hàng với mã trạng thái khác nhau để gộp lại" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "Cần cung cấp ít nhất hai mặt hàng" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "Giá trị khóa chính mặt hàng" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "Mã trạng thái mặt hàng" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "Ghi chú giao dịch kho" @@ -9824,7 +9971,7 @@ msgstr "Đã cách ly" msgid "Legacy stock tracking entry" msgstr "Mục theo dõi kho cổ điển" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "Kho hàng đã được khởi tạo" @@ -9880,7 +10027,7 @@ msgstr "Tách từ mục cha" msgid "Split child item" msgstr "Tách mục con" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "Kho hàng đã được gộp" @@ -9900,7 +10047,7 @@ msgstr "Đầu ra đơn đặt bản dựng đã hoàn thành" msgid "Build order output rejected" msgstr "Đầu ra đơn đặt bản dựng bị từ chối" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "Tiêu hao bởi đơn đặt bản dựng" @@ -9961,7 +10108,7 @@ msgstr "Ghi chú tại kho hàng" msgid "Installed Stock Items" msgstr "Hàng hóa đã lắp đặt" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "Lắp đặt hàng hóa trong kho" @@ -9969,7 +10116,7 @@ msgstr "Lắp đặt hàng hóa trong kho" msgid "Delete all test results for this stock item" msgstr "Xóa toàn bộ kết quả kiểm thử cho kho hàng này" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "Chức năng điều chỉnh kho" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "Đếm hàng" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "Thêm hàng" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "Xóa hàng hóa" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "Sắp xếp hàng hóa" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "Chuyển giao hàng" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "Chỉ định cho khách hàng" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "Xóa mặt hàng" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "Dựng" @@ -10114,12 +10261,8 @@ msgstr "trang tiếp theo" msgid "Navigate to next serial number" msgstr "Điều hướng đến số sêri tiếp" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "Số lượng sẵn có" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "Không có vị trí nào được đặt" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "Chưa thực hiện kiểm kê" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "Vị trí mới" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "Cài đặt sản phẩm" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "Nhập hàng hóa" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "Nhập sản phẩm" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "Xóa" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "Trang chủ" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "Xác nhận địa chỉ email" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Xin hãy xác nhận rằng %(email)s là địa chỉ email cho người dùng %(user_display)s." -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "Xác nhận" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "Sản phẩm sau còn ít hàng trong kho yêu cầu" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "Số lượng bắt buộc" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "Nhấp chuột vào liên kết dưới đây để xem sản phẩm này" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "Số lượng tối thiểu" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "Quét mã vạch" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Lỗi biểu mẫu tồn tại" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "Thêm" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/zh/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh/LC_MESSAGES/django.po index 3cdfbd30a8..a5a0510d47 100644 --- a/src/backend/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/zh/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" -"PO-Revision-Date: 2024-07-08 14:56\n" +"POT-Creation-Date: 2024-07-17 13:47+0000\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Language: zh_TW\n" @@ -56,26 +56,29 @@ msgstr "" msgid "Enter date" msgstr "" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 -#: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 +#: company/models.py:826 +#: company/templates/company/manufacturer_part_sidebar.html:11 +#: company/templates/company/sidebar.html:37 +#: company/templates/company/supplier_part_sidebar.html:11 order/models.py:1305 +#: order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "" @@ -132,7 +135,7 @@ msgstr "" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "" @@ -204,142 +207,150 @@ msgid "Supplied URL is not a valid image file" msgstr "" #: InvenTree/locales.py:18 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: InvenTree/locales.py:19 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: InvenTree/locales.py:20 -msgid "Danish" +msgid "Czech" msgstr "" #: InvenTree/locales.py:21 -msgid "German" +msgid "Danish" msgstr "" #: InvenTree/locales.py:22 -msgid "Greek" +msgid "German" msgstr "" #: InvenTree/locales.py:23 -msgid "English" +msgid "Greek" msgstr "" #: InvenTree/locales.py:24 -msgid "Spanish" +msgid "English" msgstr "" #: InvenTree/locales.py:25 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: InvenTree/locales.py:26 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: InvenTree/locales.py:27 -msgid "Finnish" +msgid "Estonian" msgstr "" #: InvenTree/locales.py:28 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: InvenTree/locales.py:29 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: InvenTree/locales.py:30 -msgid "Hindi" +msgid "French" msgstr "" #: InvenTree/locales.py:31 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: InvenTree/locales.py:32 -msgid "Italian" +msgid "Hindi" msgstr "" #: InvenTree/locales.py:33 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: InvenTree/locales.py:34 -msgid "Korean" +msgid "Italian" msgstr "" #: InvenTree/locales.py:35 -msgid "Latvian" +msgid "Japanese" msgstr "" #: InvenTree/locales.py:36 -msgid "Dutch" +msgid "Korean" msgstr "" #: InvenTree/locales.py:37 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: InvenTree/locales.py:38 -msgid "Polish" +msgid "Dutch" msgstr "" #: InvenTree/locales.py:39 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: InvenTree/locales.py:40 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: InvenTree/locales.py:41 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: InvenTree/locales.py:42 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: InvenTree/locales.py:43 -msgid "Slovak" +msgid "Romanian" msgstr "" #: InvenTree/locales.py:44 -msgid "Slovenian" +msgid "Russian" msgstr "" #: InvenTree/locales.py:45 -msgid "Serbian" +msgid "Slovak" msgstr "" #: InvenTree/locales.py:46 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: InvenTree/locales.py:47 -msgid "Thai" +msgid "Serbian" msgstr "" #: InvenTree/locales.py:48 -msgid "Turkish" +msgid "Swedish" msgstr "" #: InvenTree/locales.py:49 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: InvenTree/locales.py:50 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: InvenTree/locales.py:51 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: InvenTree/locales.py:52 +msgid "Vietnamese" +msgstr "" + +#: InvenTree/locales.py:53 +msgid "Chinese (Simplified)" +msgstr "" + +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -403,9 +414,9 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 -#: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 +#: common/serializers.py:412 company/models.py:588 machine/models.py:24 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -417,20 +428,20 @@ msgstr "" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "" -#: InvenTree/models.py:775 build/models.py:242 +#: InvenTree/models.py:775 build/models.py:244 #: build/templates/build/detail.html:24 common/models.py:143 -#: company/models.py:515 company/models.py:815 +#: company/models.py:516 company/models.py:817 #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -441,22 +452,22 @@ msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "" @@ -464,8 +475,8 @@ msgstr "" msgid "Description (optional)" msgstr "" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "" @@ -501,12 +512,12 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -556,9 +567,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 -#: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 +#: company/models.py:791 machine/models.py:39 part/admin.py:88 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -597,7 +608,7 @@ msgstr "" msgid "Invalid value" msgstr "" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:63 msgid "Data File" msgstr "" @@ -651,7 +662,7 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "" @@ -711,48 +722,48 @@ msgstr "" msgid "About InvenTree" msgstr "" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:881 company/serializers.py:390 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -763,7 +774,7 @@ msgstr "" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "" @@ -778,72 +789,72 @@ msgstr "" msgid "Build Orders" msgstr "" -#: build/models.py:127 +#: build/models.py:129 msgid "Assembly BOM has not been validated" msgstr "" -#: build/models.py:134 +#: build/models.py:136 msgid "Build order cannot be created for an inactive part" msgstr "" -#: build/models.py:141 +#: build/models.py:143 msgid "Build order cannot be created for an unlocked part" msgstr "" -#: build/models.py:155 +#: build/models.py:157 msgid "Invalid choice for parent build" msgstr "" -#: build/models.py:166 order/models.py:240 +#: build/models.py:168 order/models.py:240 msgid "Responsible user or group must be specified" msgstr "" -#: build/models.py:172 +#: build/models.py:174 msgid "Build order part cannot be changed" msgstr "" -#: build/models.py:233 +#: build/models.py:235 msgid "Build Order Reference" msgstr "" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:236 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" msgstr "" -#: build/models.py:245 +#: build/models.py:247 msgid "Brief description of the build (optional)" msgstr "" -#: build/models.py:253 build/templates/build/build_base.html:183 +#: build/models.py:255 build/templates/build/build_base.html:183 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" -#: build/models.py:254 +#: build/models.py:256 msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:261 build/serializers.py:1224 #: build/templates/build/build_base.html:97 -#: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: build/templates/build/detail.html:29 company/models.py:1036 order/api.py:759 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -854,184 +865,185 @@ msgstr "" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "" -#: build/models.py:267 +#: build/models.py:269 msgid "Select part to build" msgstr "" -#: build/models.py:272 +#: build/models.py:274 msgid "Sales Order Reference" msgstr "" -#: build/models.py:276 +#: build/models.py:278 msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:283 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "" -#: build/models.py:285 +#: build/models.py:287 msgid "Select location to take stock from for this build (leave blank to take from any stock location)" msgstr "" -#: build/models.py:290 +#: build/models.py:292 msgid "Destination Location" msgstr "" -#: build/models.py:294 +#: build/models.py:296 msgid "Select location where the completed items will be stored" msgstr "" -#: build/models.py:298 +#: build/models.py:300 msgid "Build Quantity" msgstr "" -#: build/models.py:301 +#: build/models.py:303 msgid "Number of stock items to build" msgstr "" -#: build/models.py:305 +#: build/models.py:307 msgid "Completed items" msgstr "" -#: build/models.py:307 +#: build/models.py:309 msgid "Number of stock items which have been completed" msgstr "" -#: build/models.py:311 +#: build/models.py:313 msgid "Build Status" msgstr "" -#: build/models.py:315 +#: build/models.py:317 msgid "Build status code" msgstr "" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:326 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:641 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:330 build/serializers.py:297 msgid "Batch code for this build output" msgstr "" -#: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: build/models.py:333 order/models.py:316 order/serializers.py:127 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" msgstr "" -#: build/models.py:335 +#: build/models.py:337 msgid "Target completion date" msgstr "" -#: build/models.py:336 +#: build/models.py:338 msgid "Target date for build completion. Build will be overdue after this date." msgstr "" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:341 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "" -#: build/models.py:345 +#: build/models.py:347 msgid "completed by" msgstr "" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:355 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "" -#: build/models.py:354 +#: build/models.py:356 msgid "User who issued this build order" msgstr "" -#: build/models.py:362 build/templates/build/build_base.html:204 +#: build/models.py:364 build/templates/build/build_base.html:204 #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" msgstr "" -#: build/models.py:363 +#: build/models.py:365 msgid "User or group responsible for this build order" msgstr "" -#: build/models.py:368 build/templates/build/detail.html:108 +#: build/models.py:370 build/templates/build/detail.html:108 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:194 #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:371 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "" -#: build/models.py:373 +#: build/models.py:375 msgid "Build Priority" msgstr "" -#: build/models.py:376 +#: build/models.py:378 msgid "Priority of this build order" msgstr "" -#: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: build/models.py:385 common/models.py:122 common/models.py:136 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1039,66 +1051,66 @@ msgstr "" msgid "Project Code" msgstr "" -#: build/models.py:384 +#: build/models.py:386 msgid "Project code for this build order" msgstr "" -#: build/models.py:617 build/models.py:682 +#: build/models.py:619 build/models.py:684 msgid "Failed to offload task to complete build allocations" msgstr "" -#: build/models.py:639 +#: build/models.py:641 #, python-brace-format msgid "Build order {build} has been completed" msgstr "" -#: build/models.py:645 +#: build/models.py:647 msgid "A build order has been completed" msgstr "" -#: build/models.py:871 build/models.py:956 +#: build/models.py:873 build/models.py:958 msgid "No build output specified" msgstr "" -#: build/models.py:874 +#: build/models.py:876 msgid "Build output is already completed" msgstr "" -#: build/models.py:877 +#: build/models.py:879 msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:962 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:470 +#: order/serializers.py:636 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:967 build/serializers.py:234 msgid "Quantity cannot be greater than the output quantity" msgstr "" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1027 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" -#: build/models.py:1366 +#: build/models.py:1368 msgid "Build Order Line Item" msgstr "" -#: build/models.py:1391 +#: build/models.py:1393 msgid "Build object" msgstr "" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1407 build/models.py:1663 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1413 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1108,461 +1120,520 @@ msgstr "" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "" -#: build/models.py:1406 +#: build/models.py:1408 msgid "Required quantity for build order" msgstr "" -#: build/models.py:1486 +#: build/models.py:1488 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1495 +#: build/models.py:1497 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1507 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1513 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1517 +#: build/models.py:1519 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1576 +#: build/models.py:1578 msgid "Selected stock item does not match BOM line" msgstr "" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1650 build/serializers.py:856 order/serializers.py:1257 +#: order/serializers.py:1278 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "" -#: build/models.py:1649 +#: build/models.py:1651 msgid "Source stock item" msgstr "" -#: build/models.py:1662 +#: build/models.py:1664 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1670 +#: build/models.py:1672 msgid "Install into" msgstr "" -#: build/models.py:1671 +#: build/models.py:1673 msgid "Destination stock item" msgstr "" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +msgid "Project Code Label" +msgstr "" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:649 order/serializers.py:1417 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:625 order/serializers.py:749 order/serializers.py:1744 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "" -#: build/serializers.py:304 +#: build/serializers.py:310 msgid "Stock location for build output" msgstr "" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:334 +#: build/serializers.py:340 msgid "Serial numbers must be provided for trackable parts" msgstr "" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "" -#: build/serializers.py:445 +#: build/serializers.py:451 msgid "Stock location for scrapped outputs" msgstr "" -#: build/serializers.py:451 +#: build/serializers.py:457 msgid "Discard Allocations" msgstr "" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 msgid "Reason for scrapping build output(s)" msgstr "" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:657 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "" -#: build/serializers.py:615 +#: build/serializers.py:621 msgid "Consume Allocated Stock" msgstr "" -#: build/serializers.py:616 +#: build/serializers.py:622 msgid "Consume any stock which has already been allocated to this build" msgstr "" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1320 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:773 +#: build/serializers.py:779 msgid "Build Line" msgstr "" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:827 +#: build/serializers.py:833 msgid "Build Line Item" msgstr "" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1311 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1563 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 msgid "Supplier Part Number" msgstr "" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:501 msgid "Manufacturer Part Number" msgstr "" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 msgid "Build Reference" msgstr "" -#: build/serializers.py:1099 +#: build/serializers.py:1138 msgid "BOM Reference" msgstr "" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +msgid "Allocated Quantity" +msgstr "" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +msgid "Part Category ID" +msgstr "" + +#: build/serializers.py:1230 +msgid "Part Category Name" +msgstr "" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "" -#: build/serializers.py:1224 +#: build/serializers.py:1270 msgid "Available Substitute Stock" msgstr "" -#: build/serializers.py:1225 +#: build/serializers.py:1271 msgid "Available Variant Stock" msgstr "" -#: build/serializers.py:1226 +#: build/serializers.py:1272 msgid "Total Available Stock" msgstr "" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 msgid "External Stock" msgstr "" @@ -1581,7 +1652,7 @@ msgstr "" msgid "Cancelled" msgstr "" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:509 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1637,8 +1708,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1715,14 +1786,14 @@ msgstr "" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1753,8 +1824,8 @@ msgid "Completed Outputs" msgstr "" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1764,7 +1835,7 @@ msgstr "" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "" @@ -1776,7 +1847,7 @@ msgid "Issued By" msgstr "" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "" @@ -1804,8 +1875,8 @@ msgstr "" msgid "Stock can be taken from any available location." msgstr "" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "" @@ -1819,11 +1890,11 @@ msgstr "" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1833,7 +1904,7 @@ msgstr "" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "" @@ -1851,12 +1922,12 @@ msgstr "" msgid "Build not complete" msgstr "" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" +msgid "Build Order Line Items" msgstr "" #: build/templates/build/detail.html:181 @@ -1879,7 +1950,7 @@ msgstr "" msgid "Manually allocate stock to build" msgstr "" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "" @@ -1908,15 +1979,15 @@ msgstr "" msgid "New Build Output" msgstr "" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 msgid "Consumed Stock" msgstr "" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -1932,15 +2003,15 @@ msgstr "" msgid "Attachments" msgstr "" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 msgid "All lines have been fully allocated" msgstr "" @@ -1952,6 +2023,16 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "" @@ -2156,8 +2237,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "" @@ -2306,70 +2387,78 @@ msgid "Enable revision field for Part" msgstr "" #: common/models.py:1412 -msgid "Allow Deletion from Assembly" +msgid "Assembly Revision Only" msgstr "" #: common/models.py:1413 -msgid "Allow deletion of parts which are used in an assembly" +msgid "Only allow revisions for assembly parts" msgstr "" #: common/models.py:1418 -msgid "IPN Regex" +msgid "Allow Deletion from Assembly" msgstr "" #: common/models.py:1419 +msgid "Allow deletion of parts which are used in an assembly" +msgstr "" + +#: common/models.py:1424 +msgid "IPN Regex" +msgstr "" + +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2377,1291 +2466,1291 @@ msgstr "" msgid "Template" msgstr "" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 msgid "Enforce Parameter Units" msgstr "" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1668 +#: common/models.py:1674 msgid "Log Report Errors" msgstr "" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 msgid "Show Installed Stock Items" msgstr "" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 msgid "Require Responsible Owner" msgstr "" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 msgid "Require Active Part" msgstr "" -#: common/models.py:1796 +#: common/models.py:1802 msgid "Prevent build order creation for inactive parts" msgstr "" -#: common/models.py:1801 +#: common/models.py:1807 msgid "Require Locked Part" msgstr "" -#: common/models.py:1802 +#: common/models.py:1808 msgid "Prevent build order creation for unlocked parts" msgstr "" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 msgid "Enable Return Orders" msgstr "" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 msgid "Return Order Reference Pattern" msgstr "" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 msgid "Edit Completed Return Orders" msgstr "" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 msgid "Mark Shipped Orders as Complete" msgstr "" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 msgid "Auto Complete Purchase Orders" msgstr "" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 msgid "Enable project codes" msgstr "" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 msgid "Exclude External Locations" msgstr "" -#: common/models.py:2092 +#: common/models.py:2098 msgid "Exclude stock items in external locations from stocktake calculations" msgstr "" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 msgid "Enable test station data collection for test results" msgstr "" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 msgid "Hide inactive parts" msgstr "" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 msgid "Show pending SO shipments on the homepage" msgstr "" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 msgid "Search Return Orders" msgstr "" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 msgid "Regex Search" msgstr "" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:88 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:508 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 -#: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 +#: company/models.py:446 company/models.py:507 company/models.py:808 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3671,94 +3760,94 @@ msgstr "" msgid "Image" msgstr "" -#: common/models.py:2997 +#: common/models.py:3003 msgid "Image file" msgstr "" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 msgid "Target model type for this image" msgstr "" -#: common/models.py:3013 +#: common/models.py:3019 msgid "Target model ID for this image" msgstr "" -#: common/models.py:3035 +#: common/models.py:3041 msgid "Custom Unit" msgstr "" -#: common/models.py:3056 +#: common/models.py:3062 msgid "Unit symbol must be unique" msgstr "" -#: common/models.py:3071 +#: common/models.py:3077 msgid "Unit name must be a valid identifier" msgstr "" -#: common/models.py:3090 +#: common/models.py:3096 msgid "Unit name" msgstr "" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 msgid "Optional unit symbol" msgstr "" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 msgid "Definition" msgstr "" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "" -#: common/models.py:3237 +#: common/models.py:3243 msgid "Attachment comment" msgstr "" -#: common/models.py:3253 +#: common/models.py:3259 msgid "Upload date" msgstr "" -#: common/models.py:3254 +#: common/models.py:3260 msgid "Date the file was uploaded" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size" msgstr "" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4139,26 +4228,26 @@ msgstr "" msgid "Link to address information (external)" msgstr "" -#: company/models.py:469 company/models.py:581 company/models.py:799 +#: company/models.py:470 company/models.py:582 company/models.py:801 #: company/templates/company/manufacturer_part.html:7 #: company/templates/company/manufacturer_part.html:24 #: stock/templates/stock/item_base.html:217 msgid "Manufacturer Part" msgstr "" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:482 company/models.py:769 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" -#: company/models.py:483 company/models.py:769 +#: company/models.py:484 company/models.py:771 msgid "Select part" msgstr "" -#: company/models.py:492 company/templates/company/company_base.html:82 +#: company/models.py:493 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4168,187 +4257,194 @@ msgstr "" msgid "Manufacturer" msgstr "" -#: company/models.py:493 +#: company/models.py:494 msgid "Select manufacturer" msgstr "" -#: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/models.py:500 company/templates/company/manufacturer_part.html:101 +#: company/templates/company/supplier_part.html:153 order/serializers.py:527 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" -#: company/models.py:507 +#: company/models.py:508 msgid "URL for external manufacturer part link" msgstr "" -#: company/models.py:516 +#: company/models.py:517 msgid "Manufacturer part description" msgstr "" -#: company/models.py:569 +#: company/models.py:570 msgid "Manufacturer Part Parameter" msgstr "" -#: company/models.py:588 +#: company/models.py:589 msgid "Parameter name" msgstr "" -#: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: company/models.py:595 report/templates/report/inventree_test_report.html:104 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "" -#: company/models.py:595 +#: company/models.py:596 msgid "Parameter value" msgstr "" -#: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: company/models.py:603 company/templates/company/supplier_part.html:168 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "" -#: company/models.py:603 +#: company/models.py:604 msgid "Parameter units" msgstr "" -#: company/models.py:655 company/templates/company/supplier_part.html:7 +#: company/models.py:657 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: order/serializers.py:462 stock/models.py:776 +#: stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "" -#: company/models.py:707 +#: company/models.py:709 msgid "Pack units must be compatible with the base part units" msgstr "" -#: company/models.py:714 +#: company/models.py:716 msgid "Pack units must be greater than zero" msgstr "" -#: company/models.py:728 +#: company/models.py:730 msgid "Linked manufacturer part must reference the same base part" msgstr "" -#: company/models.py:777 company/templates/company/company_base.html:87 +#: company/models.py:779 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "" -#: company/models.py:778 +#: company/models.py:780 msgid "Select supplier" msgstr "" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:786 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" -#: company/models.py:790 +#: company/models.py:792 msgid "Is this supplier part active?" msgstr "" -#: company/models.py:800 +#: company/models.py:802 msgid "Select manufacturer part" msgstr "" -#: company/models.py:807 +#: company/models.py:809 msgid "URL for external supplier part link" msgstr "" -#: company/models.py:816 +#: company/models.py:818 msgid "Supplier part description" msgstr "" -#: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: company/models.py:825 company/templates/company/supplier_part.html:187 +#: order/serializers.py:669 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:834 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:835 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "" -#: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: company/models.py:842 company/templates/company/supplier_part.html:160 +#: order/serializers.py:661 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "" -#: company/models.py:841 +#: company/models.py:843 msgid "Part packaging" msgstr "" -#: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: company/models.py:848 templates/js/translated/company.js:1651 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" -#: company/models.py:848 +#: company/models.py:850 msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:869 part/models.py:2086 msgid "multiple" msgstr "" -#: company/models.py:868 +#: company/models.py:870 msgid "Order multiple" msgstr "" -#: company/models.py:880 +#: company/models.py:882 msgid "Quantity available from supplier" msgstr "" -#: company/models.py:886 +#: company/models.py:888 msgid "Availability Updated" msgstr "" -#: company/models.py:887 +#: company/models.py:889 msgid "Date of last update of availability data" msgstr "" -#: company/models.py:1015 +#: company/models.py:1017 msgid "Supplier Price Break" msgstr "" @@ -4360,7 +4456,7 @@ msgstr "" msgid "Company Name" msgstr "" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:388 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4372,7 +4468,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4430,16 +4526,16 @@ msgstr "" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "" @@ -4453,7 +4549,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4462,19 +4558,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "" @@ -4628,7 +4724,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:535 msgid "Internal Part" msgstr "" @@ -4638,7 +4734,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4658,8 +4754,12 @@ msgstr "" msgid "New Parameter" msgstr "" -#: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: company/templates/company/manufacturer_part.html:177 +msgid "Manufacturer Part Notes" +msgstr "" + +#: company/templates/company/manufacturer_part.html:225 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "" @@ -4724,12 +4824,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:524 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -4744,7 +4844,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -4762,29 +4862,33 @@ msgstr "" msgid "Add Price Break" msgstr "" -#: company/templates/company/supplier_part.html:276 +#: company/templates/company/supplier_part.html:270 +msgid "Supplier Part Notes" +msgstr "" + +#: company/templates/company/supplier_part.html:305 msgid "Supplier Part QR Code" msgstr "" -#: company/templates/company/supplier_part.html:287 +#: company/templates/company/supplier_part.html:316 msgid "Link Barcode to Supplier Part" msgstr "" -#: company/templates/company/supplier_part.html:359 +#: company/templates/company/supplier_part.html:388 msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "" @@ -4822,83 +4926,91 @@ msgstr "" msgid "Invalid export format" msgstr "" -#: importer/models.py:56 +#: importer/models.py:59 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:64 msgid "Data file to import" msgstr "" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:73 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:84 msgid "Import status" msgstr "" -#: importer/models.py:91 +#: importer/models.py:94 msgid "Field Defaults" msgstr "" -#: importer/models.py:201 +#: importer/models.py:101 +msgid "Field Overrides" +msgstr "" + +#: importer/models.py:108 +msgid "Field Filters" +msgstr "" + +#: importer/models.py:230 msgid "Some required fields have not been mapped" msgstr "" -#: importer/models.py:346 +#: importer/models.py:387 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:392 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:401 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:406 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:413 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:417 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:422 importer/models.py:493 msgid "Import Session" msgstr "" -#: importer/models.py:385 +#: importer/models.py:426 msgid "Field" msgstr "" -#: importer/models.py:387 +#: importer/models.py:428 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:497 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:500 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:503 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:505 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:507 part/api.py:874 msgid "Valid" msgstr "" @@ -4914,27 +5026,39 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "" -#: importer/serializers.py:135 +#: importer/serializers.py:91 +msgid "Invalid field defaults" +msgstr "" + +#: importer/serializers.py:104 +msgid "Invalid field overrides" +msgstr "" + +#: importer/serializers.py:117 +msgid "Invalid field filters" +msgstr "" + +#: importer/serializers.py:178 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:179 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:192 msgid "No rows provided" msgstr "" -#: importer/serializers.py:153 +#: importer/serializers.py:196 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:199 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:202 msgid "Row has already been completed" msgstr "" @@ -4970,52 +5094,56 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 msgid "Value must be a valid dictionary object" msgstr "" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 msgid "Number of copies to print for each label" msgstr "" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 msgid "Connected" msgstr "" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 msgid "Printing" msgstr "" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 msgid "Disconnected" msgstr "" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 msgid "Label Printer" msgstr "" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 msgid "Directly print labels for various items." msgstr "" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 msgid "Printer Location" msgstr "" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5075,7 +5203,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5096,9 +5224,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5111,26 +5239,26 @@ msgstr "" msgid "Order Pending" msgstr "" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 msgid "Return Order" msgstr "" @@ -5158,7 +5286,7 @@ msgstr "" msgid "Select project code for this order" msgstr "" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5182,11 +5310,11 @@ msgstr "" msgid "Company address for this order" msgstr "" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5195,7 +5323,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5207,15 +5335,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5223,501 +5351,501 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 msgid "Order is already complete" msgstr "" -#: order/models.py:1028 +#: order/models.py:1037 msgid "Order is already cancelled" msgstr "" -#: order/models.py:1032 +#: order/models.py:1041 msgid "Only an open order can be marked as complete" msgstr "" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 msgid "Line item description (optional)" msgstr "" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 msgid "Purchase Order Line Item" msgstr "" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 msgid "Purchase Order Extra Line" msgstr "" -#: order/models.py:1532 +#: order/models.py:1541 msgid "Sales Order Line Item" msgstr "" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 msgid "Sales Order Shipment" msgstr "" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1428 +#: order/serializers.py:1538 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 msgid "Sales Order Extra Line" msgstr "" -#: order/models.py:1857 +#: order/models.py:1866 msgid "Sales Order Allocation" msgstr "" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1305 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 msgid "Return Order reference" msgstr "" -#: order/models.py:2059 +#: order/models.py:2068 msgid "Company from which items are being returned" msgstr "" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 msgid "Return Order Line Item" msgstr "" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 msgid "Select item to return from customer" msgstr "" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 msgid "Return Order Extra Line" msgstr "" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 msgid "Completed Lines" msgstr "" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1321 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1331 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:477 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:498 msgid "Auto Pricing" msgstr "" -#: order/serializers.py:491 +#: order/serializers.py:500 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:510 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:516 msgid "Merge Items" msgstr "" -#: order/serializers.py:509 +#: order/serializers.py:518 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:531 part/models.py:1001 msgid "Internal Part Number" msgstr "" -#: order/serializers.py:530 +#: order/serializers.py:539 msgid "Internal Part Name" msgstr "" -#: order/serializers.py:546 +#: order/serializers.py:555 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:558 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:566 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:567 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:610 order/serializers.py:1399 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:616 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:626 order/serializers.py:750 order/serializers.py:1745 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:650 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:662 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:670 +msgid "Additional note for incoming stock items" +msgstr "" + +#: order/serializers.py:677 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "" -#: order/serializers.py:650 +#: order/serializers.py:678 msgid "Scanned barcode" msgstr "" -#: order/serializers.py:666 +#: order/serializers.py:694 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:718 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:766 order/serializers.py:1761 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:782 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:793 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1147 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1208 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1269 order/serializers.py:1408 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1288 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1418 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1440 order/serializers.py:1546 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1443 order/serializers.py:1549 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1490 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1497 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1715 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1721 msgid "Line item does not match return order" msgstr "" -#: order/serializers.py:1694 +#: order/serializers.py:1724 msgid "Line item has already been received" msgstr "" -#: order/serializers.py:1723 +#: order/serializers.py:1753 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1836 msgid "Line price currency" msgstr "" @@ -5927,13 +6055,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -6047,8 +6175,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6113,7 +6241,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6143,30 +6272,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "" @@ -6178,7 +6298,7 @@ msgstr "" msgid "Category ID" msgstr "" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6191,11 +6311,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "" @@ -6203,19 +6323,19 @@ msgstr "" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6232,14 +6352,14 @@ msgstr "" msgid "Category Path" msgstr "" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "" @@ -6256,13 +6376,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6300,7 +6420,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 msgid "Parent" msgstr "" @@ -6344,29 +6464,38 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +msgid "Is Revision" +msgstr "" + +#: part/api.py:927 +msgid "Has Revisions" +msgstr "" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6375,753 +6504,784 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 msgid "Cannot delete this part as it is locked" msgstr "" -#: part/models.py:489 +#: part/models.py:490 msgid "Cannot delete this part as it is still active" msgstr "" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, python-brace-format msgid "IPN must match regex pattern {pattern}" msgstr "" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +msgid "Revision code must be specified" +msgstr "" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +msgid "Parent part must point to the same template" +msgstr "" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:851 +#: part/models.py:894 +msgid "Duplicate part revision already exists." +msgstr "" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 msgid "Part description (optional)" msgstr "" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +msgid "Revision Of" +msgstr "" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 msgid "Locked" msgstr "" -#: part/models.py:1091 +#: part/models.py:1157 msgid "Locked parts cannot be edited" msgstr "" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "" -#: part/models.py:1143 +#: part/models.py:1209 msgid "Owner responsible for this part" msgstr "" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 msgid "Part Sale Price Break" msgstr "" -#: part/models.py:3413 +#: part/models.py:3479 msgid "Part Test Template" msgstr "" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 msgid "Choices must be unique" msgstr "" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 msgid "Test template with the same key already exists for part" msgstr "" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 msgid "Part Parameter Template" msgstr "" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 msgid "Part Parameter" msgstr "" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 msgid "Invalid choice for parameter value" msgstr "" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 msgid "Part Category Parameter Template" msgstr "" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 msgid "This BOM item has been validated" msgstr "" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7129,7 +7289,7 @@ msgstr "" msgid "Parent Category" msgstr "" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7147,7 +7307,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7155,303 +7315,312 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 msgid "No parts selected" msgstr "" -#: part/serializers.py:420 +#: part/serializers.py:422 msgid "Select category" msgstr "" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 msgid "Copy Notes" msgstr "" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 -msgid "Unallocated Stock" -msgstr "" - -#: part/serializers.py:867 -msgid "Variant Stock" -msgstr "" - -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 -msgid "Duplicate Part" +#: part/serializers.py:893 +msgid "Revisions" msgstr "" #: part/serializers.py:898 +msgid "Unallocated Stock" +msgstr "" + +#: part/serializers.py:901 +msgid "Variant Stock" +msgstr "" + +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 +msgid "Duplicate Part" +msgstr "" + +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 msgid "Existing Image" msgstr "" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 msgid "Image file does not exist" msgstr "" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 msgid "Exclude stock items in external locations" msgstr "" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 msgid "Minimum price currency" msgstr "" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 msgid "Maximum price currency" msgstr "" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -7603,7 +7772,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -7790,7 +7959,7 @@ msgstr "" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -7839,7 +8008,7 @@ msgid "Part is virtual (not a physical part)" msgstr "" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -7853,51 +8022,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -7955,9 +8120,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -8003,7 +8168,7 @@ msgstr "" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8076,8 +8241,8 @@ msgstr "" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8155,7 +8320,7 @@ msgstr "" msgid "Part Pricing" msgstr "" -#: plugin/api.py:170 +#: plugin/api.py:172 msgid "Plugin cannot be deleted as it is currently active" msgstr "" @@ -8177,7 +8342,7 @@ msgid "Match found for barcode data" msgstr "" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8221,7 +8386,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8345,7 +8510,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8406,10 +8571,12 @@ msgid "Provides native support for printing PDF labels" msgstr "" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 msgid "Debug mode" msgstr "" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8421,55 +8588,55 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 msgid "Page size for the label sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 msgid "Skip Labels" msgstr "" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -8763,7 +8930,7 @@ msgid "No valid objects provided to template" msgstr "" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -8891,7 +9058,7 @@ msgstr "" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -8993,7 +9160,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "" @@ -9006,26 +9173,11 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "" - #: report/templates/report/inventree_stock_location_report.html:97 msgid "Stock location items" msgstr "" @@ -9039,11 +9191,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9064,13 +9216,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9127,7 +9279,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9152,9 +9304,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9170,7 +9322,7 @@ msgstr "" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 msgid "Parent Location" msgstr "" @@ -9194,7 +9346,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9232,7 +9384,7 @@ msgstr "" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9244,12 +9396,12 @@ msgstr "" msgid "Stock Locations" msgstr "" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9257,7 +9409,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9266,7 +9418,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 msgid "Location type" msgstr "" @@ -9283,7 +9435,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9300,236 +9452,236 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 msgid "Consumed By" msgstr "" -#: stock/models.py:871 +#: stock/models.py:869 msgid "Build order which consumed this stock item" msgstr "" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "" -#: stock/models.py:1617 +#: stock/models.py:1619 msgid "Test template does not exist" msgstr "" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 msgid "Stock Item Tracking" msgstr "" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 msgid "Stock Item Test Result" msgstr "" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 msgid "Invalid value for this test" msgstr "" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 msgid "Test station" msgstr "" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 msgid "The timestamp of the test start" msgstr "" -#: stock/models.py:2498 +#: stock/models.py:2500 msgid "Finished" msgstr "" -#: stock/models.py:2499 +#: stock/models.py:2501 msgid "The timestamp of the test finish" msgstr "" @@ -9577,222 +9729,217 @@ msgstr "" msgid "Test template for this result" msgstr "" -#: stock/serializers.py:252 +#: stock/serializers.py:254 msgid "Template ID or test name must be provided" msgstr "" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 msgid "Parent stock item" msgstr "" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -msgid "Allocated Quantity" -msgstr "" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 msgid "Tracking Items" msgstr "" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 msgid "Minimum Pricing" msgstr "" -#: stock/serializers.py:629 +#: stock/serializers.py:634 msgid "Maximum Pricing" msgstr "" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 msgid "Enter the quantity of items to install" msgstr "" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "" -#: stock/serializers.py:777 +#: stock/serializers.py:782 msgid "Quantity to install must be at least 1" msgstr "" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 msgid "Quantity to install must not exceed available quantity" msgstr "" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 msgid "Select stock items to change status" msgstr "" -#: stock/serializers.py:983 +#: stock/serializers.py:988 msgid "No stock items selected" msgstr "" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 msgid "No Change" msgstr "" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 msgid "Stock item status code" msgstr "" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -9824,7 +9971,7 @@ msgstr "" msgid "Legacy stock tracking entry" msgstr "" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "" @@ -9880,7 +10027,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "" @@ -9900,7 +10047,7 @@ msgstr "" msgid "Build order output rejected" msgstr "" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "" @@ -9961,7 +10108,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -9969,7 +10116,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -9992,17 +10139,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10011,12 +10158,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10057,7 +10204,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "" @@ -10114,12 +10261,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "" @@ -10146,7 +10289,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 msgid "stock item" msgstr "" @@ -10255,7 +10398,7 @@ msgid "New Location" msgstr "" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 msgid "stock location" msgstr "" @@ -10533,11 +10676,11 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "" @@ -10756,9 +10899,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "" @@ -10779,7 +10922,7 @@ msgid "No project codes found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -10798,12 +10941,12 @@ msgid "No category parameter templates found" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "" @@ -10867,7 +11010,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2200 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -11203,7 +11346,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "" @@ -11436,7 +11579,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -11450,7 +11593,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -11595,81 +11738,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -11805,7 +11948,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -11825,30 +11968,30 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 msgid "External stock" msgstr "" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -11880,7 +12023,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -11888,364 +12031,400 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 msgid "Deallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 msgid "Scrap build output" msgstr "" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 msgid "Deallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 -msgid "Select Build Outputs" -msgstr "" - #: templates/js/translated/build.js:584 templates/js/translated/build.js:712 #: templates/js/translated/build.js:838 +msgid "Select Build Outputs" +msgstr "" + +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 msgid "Selected build outputs will be marked as complete" msgstr "" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 msgid "Selected build outputs will be marked as scrapped" msgstr "" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 msgid "Scrapped output are marked as rejected" msgstr "" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 msgid "Allocated stock items will no longer be available" msgstr "" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 msgid "Scrap Build Outputs" msgstr "" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 msgid "Selected build outputs will be deleted" msgstr "" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 msgid "Build output data will be permanently deleted" msgstr "" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 msgid "Allocated stock items will be returned to stock" msgstr "" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +msgid "Delete allocations" +msgstr "" + +#: templates/js/translated/build.js:968 +msgid "Delete Stock Allocations" +msgstr "" + +#: templates/js/translated/build.js:991 +msgid "No allocated stock" +msgstr "" + +#: templates/js/translated/build.js:1047 +msgid "Stock item" +msgstr "" + +#: templates/js/translated/build.js:1072 +msgid "Edit build allocation" +msgstr "" + +#: templates/js/translated/build.js:1073 +msgid "Delete build allocation" +msgstr "" + +#: templates/js/translated/build.js:1091 +msgid "Edit Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1104 +msgid "Delete Build Allocation" +msgstr "" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 msgid "Scrap outputs" msgstr "" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 msgid "build output" msgstr "" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 msgid "build outputs" msgstr "" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 msgid "Build output actions" msgstr "" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 msgid "Allocated Lines" msgstr "" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2196 templates/js/translated/forms.js:2212 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 msgid "build line" msgstr "" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 msgid "build lines" msgstr "" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 msgid "No build lines found" msgstr "" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 msgid "Unit Quantity" msgstr "" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 msgid "Consumable Item" msgstr "" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 msgid "Tracked item" msgstr "" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 msgid "Remove stock allocation" msgstr "" @@ -12392,7 +12571,7 @@ msgid "Delete Parameters" msgstr "" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "" @@ -12409,34 +12588,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "" @@ -12532,61 +12711,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:2008 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2319 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2533 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3135 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3147 msgid "Select Columns" msgstr "" @@ -12687,7 +12866,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -12736,7 +12915,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -12768,343 +12947,342 @@ msgstr "" msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 msgid "Create new category after this one" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 msgid "Part category created" msgstr "" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 msgid "part" msgstr "" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 msgid "parts" msgstr "" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 msgid "No subcategories found" msgstr "" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" +#: templates/js/translated/part.js:2956 +msgid "Edit test template" msgstr "" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" - -#: templates/js/translated/part.js:2945 -msgid "This test is defined for a parent part" +#: templates/js/translated/part.js:2957 +msgid "Delete test template" msgstr "" #: templates/js/translated/part.js:2961 +msgid "This test is defined for a parent part" +msgstr "" + +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -13317,108 +13495,121 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +msgid "Specify packaging for incoming stock items" +msgstr "" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 msgid "Add barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 msgid "Remove barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 msgid "Specify location" msgstr "" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +msgid "Specify packaging" +msgstr "" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +msgid "Add note" +msgstr "" + +#: templates/js/translated/purchase_order.js:1338 msgid "Serials" msgstr "" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 msgid "Scan Item Barcode" msgstr "" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 msgid "Invalid barcode data" msgstr "" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 msgid "All selected Line items will be deleted" msgstr "" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 msgid "Delete selected Line items?" msgstr "" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -13642,7 +13833,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -13700,476 +13891,492 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 msgid "Add Location type" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 msgid "Stock location created" msgstr "" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +msgid "Adjust batch code" +msgstr "" + +#: templates/js/translated/stock.js:1174 +msgid "Adjust packaging" +msgstr "" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 msgid "stock items" msgstr "" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 msgid "Scan to location" msgstr "" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 msgid "Stock Actions" msgstr "" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 msgid "Load installed items" msgstr "" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 msgid "Stock item has been consumed by a build order" msgstr "" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 msgid "Stock Value" msgstr "" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 msgid "stock locations" msgstr "" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 msgid "Load Sublocations" msgstr "" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 msgid "No changes" msgstr "" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 msgid "Build order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 msgid "Sales Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 msgid "Select one or more stock items" msgstr "" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 msgid "Selected stock items" msgstr "" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 msgid "Change Stock Status" msgstr "" diff --git a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po index 6e7440eeae..1706ed4846 100644 --- a/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po +++ b/src/backend/InvenTree/locale/zh_Hans/LC_MESSAGES/django.po @@ -2,7 +2,7 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-07-08 14:46+0000\n" +"POT-Creation-Date: 2024-07-16 03:18+0000\n" "PO-Revision-Date: 2023-02-28 22:38\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" @@ -62,26 +62,26 @@ msgstr "在管理面板中可以找到错误详细信息" msgid "Enter date" msgstr "输入日期" -#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:456 -#: build/serializers.py:534 build/templates/build/sidebar.html:21 +#: InvenTree/fields.py:205 InvenTree/models.py:921 build/serializers.py:462 +#: build/serializers.py:540 build/templates/build/sidebar.html:25 #: company/models.py:824 company/templates/company/sidebar.html:37 -#: order/models.py:1296 order/templates/order/po_sidebar.html:11 +#: order/models.py:1305 order/templates/order/po_sidebar.html:11 #: order/templates/order/return_order_sidebar.html:9 #: order/templates/order/so_sidebar.html:17 part/admin.py:59 -#: part/models.py:3193 part/templates/part/part_sidebar.html:63 +#: part/models.py:3259 part/templates/part/part_sidebar.html:63 #: report/templates/report/inventree_build_order_report.html:172 -#: stock/admin.py:230 stock/models.py:2349 stock/models.py:2476 -#: stock/serializers.py:690 stock/serializers.py:848 stock/serializers.py:944 -#: stock/serializers.py:994 stock/serializers.py:1305 stock/serializers.py:1394 -#: stock/serializers.py:1559 stock/templates/stock/stock_sidebar.html:25 +#: stock/admin.py:230 stock/models.py:2351 stock/models.py:2478 +#: stock/serializers.py:695 stock/serializers.py:853 stock/serializers.py:949 +#: stock/serializers.py:999 stock/serializers.py:1310 stock/serializers.py:1399 +#: stock/serializers.py:1564 stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:143 templates/js/translated/bom.js:1265 #: templates/js/translated/company.js:1684 templates/js/translated/order.js:347 -#: templates/js/translated/part.js:1084 -#: templates/js/translated/purchase_order.js:2200 +#: templates/js/translated/part.js:1086 +#: templates/js/translated/purchase_order.js:2271 #: templates/js/translated/return_order.js:775 #: templates/js/translated/sales_order.js:1103 #: templates/js/translated/sales_order.js:2018 -#: templates/js/translated/stock.js:1536 templates/js/translated/stock.js:2428 +#: templates/js/translated/stock.js:1617 templates/js/translated/stock.js:2509 msgid "Notes" msgstr "备注" @@ -138,7 +138,7 @@ msgstr "提供的电子邮件域未被核准。" msgid "Registration is disabled." msgstr "" -#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:764 +#: InvenTree/helpers.py:525 order/models.py:562 order/models.py:772 msgid "Invalid quantity provided" msgstr "提供的数量无效" @@ -215,148 +215,156 @@ msgid "Supplied URL is not a valid image file" msgstr "提供的 URL 不是一个有效的图片文件" #: InvenTree/locales.py:18 +msgid "Arabic" +msgstr "" + +#: InvenTree/locales.py:19 #, fuzzy #| msgid "Hungarian" msgid "Bulgarian" msgstr "匈牙利语" -#: InvenTree/locales.py:19 +#: InvenTree/locales.py:20 msgid "Czech" msgstr "捷克语" -#: InvenTree/locales.py:20 +#: InvenTree/locales.py:21 msgid "Danish" msgstr "丹麦语" -#: InvenTree/locales.py:21 +#: InvenTree/locales.py:22 msgid "German" msgstr "德语" -#: InvenTree/locales.py:22 +#: InvenTree/locales.py:23 msgid "Greek" msgstr "希腊语" -#: InvenTree/locales.py:23 +#: InvenTree/locales.py:24 msgid "English" msgstr "英语" -#: InvenTree/locales.py:24 +#: InvenTree/locales.py:25 msgid "Spanish" msgstr "西班牙语" -#: InvenTree/locales.py:25 +#: InvenTree/locales.py:26 msgid "Spanish (Mexican)" msgstr "西班牙语(墨西哥)" -#: InvenTree/locales.py:26 +#: InvenTree/locales.py:27 +msgid "Estonian" +msgstr "" + +#: InvenTree/locales.py:28 msgid "Farsi / Persian" msgstr "波斯语" -#: InvenTree/locales.py:27 +#: InvenTree/locales.py:29 #, fuzzy #| msgid "Danish" msgid "Finnish" msgstr "丹麦语" -#: InvenTree/locales.py:28 +#: InvenTree/locales.py:30 msgid "French" msgstr "法语" -#: InvenTree/locales.py:29 +#: InvenTree/locales.py:31 msgid "Hebrew" msgstr "希伯来语" -#: InvenTree/locales.py:30 +#: InvenTree/locales.py:32 msgid "Hindi" msgstr "" -#: InvenTree/locales.py:31 +#: InvenTree/locales.py:33 msgid "Hungarian" msgstr "匈牙利语" -#: InvenTree/locales.py:32 +#: InvenTree/locales.py:34 msgid "Italian" msgstr "意大利语" -#: InvenTree/locales.py:33 +#: InvenTree/locales.py:35 msgid "Japanese" msgstr "日语" -#: InvenTree/locales.py:34 +#: InvenTree/locales.py:36 msgid "Korean" msgstr "韩语" -#: InvenTree/locales.py:35 +#: InvenTree/locales.py:37 msgid "Latvian" msgstr "" -#: InvenTree/locales.py:36 +#: InvenTree/locales.py:38 msgid "Dutch" msgstr "荷兰语" -#: InvenTree/locales.py:37 +#: InvenTree/locales.py:39 msgid "Norwegian" msgstr "挪威语" -#: InvenTree/locales.py:38 +#: InvenTree/locales.py:40 msgid "Polish" msgstr "波兰语" -#: InvenTree/locales.py:39 +#: InvenTree/locales.py:41 msgid "Portuguese" msgstr "葡萄牙语" -#: InvenTree/locales.py:40 +#: InvenTree/locales.py:42 msgid "Portuguese (Brazilian)" msgstr "葡萄牙语 (巴西)" -#: InvenTree/locales.py:41 +#: InvenTree/locales.py:43 msgid "Romanian" msgstr "" -#: InvenTree/locales.py:42 +#: InvenTree/locales.py:44 msgid "Russian" msgstr "俄语" -#: InvenTree/locales.py:43 +#: InvenTree/locales.py:45 #, fuzzy #| msgid "Slovenian" msgid "Slovak" msgstr "斯洛文尼亚" -#: InvenTree/locales.py:44 +#: InvenTree/locales.py:46 msgid "Slovenian" msgstr "斯洛文尼亚" -#: InvenTree/locales.py:45 +#: InvenTree/locales.py:47 msgid "Serbian" msgstr "" -#: InvenTree/locales.py:46 +#: InvenTree/locales.py:48 msgid "Swedish" msgstr "瑞典语" -#: InvenTree/locales.py:47 +#: InvenTree/locales.py:49 msgid "Thai" msgstr "泰语" -#: InvenTree/locales.py:48 +#: InvenTree/locales.py:50 msgid "Turkish" msgstr "土耳其语" -#: InvenTree/locales.py:49 +#: InvenTree/locales.py:51 msgid "Ukrainian" msgstr "" -#: InvenTree/locales.py:50 +#: InvenTree/locales.py:52 msgid "Vietnamese" msgstr "越南语" -#: InvenTree/locales.py:51 +#: InvenTree/locales.py:53 msgid "Chinese (Simplified)" msgstr "" -#: InvenTree/locales.py:52 +#: InvenTree/locales.py:54 msgid "Chinese (Traditional)" msgstr "" @@ -422,9 +430,9 @@ msgstr "" msgid "Invalid choice" msgstr "选择无效" -#: InvenTree/models.py:769 common/models.py:2659 common/models.py:3089 +#: InvenTree/models.py:769 common/models.py:2665 common/models.py:3095 #: common/serializers.py:412 company/models.py:587 machine/models.py:24 -#: part/models.py:895 part/models.py:3660 plugin/models.py:51 +#: part/models.py:951 part/models.py:3726 plugin/models.py:51 #: report/models.py:150 stock/models.py:74 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/notifications.html:17 @@ -436,9 +444,9 @@ msgstr "选择无效" #: templates/js/translated/company.js:724 #: templates/js/translated/company.js:913 #: templates/js/translated/company.js:1165 -#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1190 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1614 -#: templates/js/translated/part.js:2752 templates/js/translated/stock.js:2716 +#: templates/js/translated/company.js:1413 templates/js/translated/part.js:1192 +#: templates/js/translated/part.js:1480 templates/js/translated/part.js:1616 +#: templates/js/translated/part.js:2768 templates/js/translated/stock.js:2797 msgid "Name" msgstr "名称" @@ -448,8 +456,8 @@ msgstr "名称" #: company/templates/company/company_base.html:77 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:107 order/models.py:289 -#: order/models.py:1329 part/admin.py:305 part/admin.py:408 part/models.py:918 -#: part/models.py:3675 part/templates/part/category.html:82 +#: order/models.py:1338 part/admin.py:305 part/admin.py:408 part/models.py:974 +#: part/models.py:3741 part/templates/part/category.html:82 #: part/templates/part/part_base.html:170 #: part/templates/part/part_scheduling.html:12 report/models.py:156 #: report/models.py:510 report/models.py:536 @@ -460,22 +468,22 @@ msgstr "名称" #: templates/InvenTree/settings/settings_staff_js.html:170 #: templates/InvenTree/settings/settings_staff_js.html:451 #: templates/js/translated/bom.js:633 templates/js/translated/bom.js:963 -#: templates/js/translated/build.js:2139 templates/js/translated/company.js:519 +#: templates/js/translated/build.js:2314 templates/js/translated/company.js:519 #: templates/js/translated/company.js:1330 #: templates/js/translated/company.js:1641 templates/js/translated/index.js:119 -#: templates/js/translated/order.js:298 templates/js/translated/part.js:1242 -#: templates/js/translated/part.js:1487 templates/js/translated/part.js:1625 -#: templates/js/translated/part.js:1962 templates/js/translated/part.js:2358 -#: templates/js/translated/part.js:2788 templates/js/translated/part.js:2900 +#: templates/js/translated/order.js:298 templates/js/translated/part.js:1244 +#: templates/js/translated/part.js:1489 templates/js/translated/part.js:1627 +#: templates/js/translated/part.js:1964 templates/js/translated/part.js:2361 +#: templates/js/translated/part.js:2804 templates/js/translated/part.js:2916 #: templates/js/translated/plugin.js:80 -#: templates/js/translated/purchase_order.js:1706 -#: templates/js/translated/purchase_order.js:1849 -#: templates/js/translated/purchase_order.js:2022 +#: templates/js/translated/purchase_order.js:1777 +#: templates/js/translated/purchase_order.js:1920 +#: templates/js/translated/purchase_order.js:2093 #: templates/js/translated/return_order.js:313 #: templates/js/translated/sales_order.js:838 #: templates/js/translated/sales_order.js:1848 -#: templates/js/translated/stock.js:1515 templates/js/translated/stock.js:2058 -#: templates/js/translated/stock.js:2748 templates/js/translated/stock.js:2831 +#: templates/js/translated/stock.js:1596 templates/js/translated/stock.js:2139 +#: templates/js/translated/stock.js:2829 templates/js/translated/stock.js:2912 msgid "Description" msgstr "描述信息" @@ -483,8 +491,8 @@ msgstr "描述信息" msgid "Description (optional)" msgstr "描述 (可选)" -#: InvenTree/models.py:791 templates/js/translated/part.js:2797 -#: templates/js/translated/stock.js:2757 +#: InvenTree/models.py:791 templates/js/translated/part.js:2813 +#: templates/js/translated/stock.js:2838 msgid "Path" msgstr "路径" @@ -522,12 +530,12 @@ msgstr "服务器错误" msgid "An error has been logged by the server." msgstr "服务器记录了一个错误。" -#: InvenTree/serializers.py:63 part/models.py:4277 +#: InvenTree/serializers.py:63 part/models.py:4349 msgid "Must be a valid number" msgstr "必须是有效数字" #: InvenTree/serializers.py:100 company/models.py:186 -#: company/templates/company/company_base.html:112 part/models.py:3011 +#: company/templates/company/company_base.html:112 part/models.py:3077 #: templates/InvenTree/settings/settings_staff_js.html:44 #: templates/currency_data.html:5 msgid "Currency" @@ -579,9 +587,9 @@ msgstr "" msgid "Is this user a superuser" msgstr "" -#: InvenTree/serializers.py:445 common/models.py:2664 company/models.py:163 +#: InvenTree/serializers.py:445 common/models.py:2670 company/models.py:163 #: company/models.py:789 machine/models.py:39 part/admin.py:88 -#: part/models.py:1085 plugin/models.py:66 +#: part/models.py:1151 plugin/models.py:66 #: templates/js/translated/company.js:523 #: templates/js/translated/table_filters.js:135 #: templates/js/translated/table_filters.js:219 @@ -624,7 +632,7 @@ msgstr "关于 InventTree" msgid "Invalid value" msgstr "无效值" -#: InvenTree/serializers.py:581 importer/models.py:60 +#: InvenTree/serializers.py:581 importer/models.py:62 msgid "Data File" msgstr "数据文件" @@ -680,7 +688,7 @@ msgstr "远程图像文件的 URL" msgid "Downloading images from remote URL is not enabled" msgstr "未启用从远程 URL下载图像" -#: InvenTree/status.py:66 part/serializers.py:1202 +#: InvenTree/status.py:66 part/serializers.py:1236 msgid "Background worker check failed" msgstr "后台工作人员检查失败" @@ -742,48 +750,48 @@ msgstr "系统信息" msgid "About InvenTree" msgstr "关于 InventTree" -#: build/api.py:248 +#: build/api.py:247 msgid "Build must be cancelled before it can be deleted" msgstr "在删除前必须取消生产" -#: build/api.py:292 build/serializers.py:1190 part/models.py:4155 +#: build/api.py:291 build/serializers.py:1234 part/models.py:4227 #: templates/js/translated/bom.js:997 templates/js/translated/bom.js:1037 -#: templates/js/translated/build.js:2521 +#: templates/js/translated/build.js:2705 #: templates/js/translated/table_filters.js:190 #: templates/js/translated/table_filters.js:583 msgid "Consumable" msgstr "" -#: build/api.py:293 build/serializers.py:1191 part/models.py:4149 +#: build/api.py:292 build/serializers.py:1235 part/models.py:4221 #: part/templates/part/upload_bom.html:58 templates/js/translated/bom.js:1001 -#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2530 +#: templates/js/translated/bom.js:1028 templates/js/translated/build.js:2696 #: templates/js/translated/table_filters.js:186 #: templates/js/translated/table_filters.js:215 #: templates/js/translated/table_filters.js:587 msgid "Optional" msgstr "可选项" -#: build/api.py:294 templates/js/translated/table_filters.js:408 +#: build/api.py:293 templates/js/translated/table_filters.js:408 #: templates/js/translated/table_filters.js:579 msgid "Tracked" msgstr "" -#: build/api.py:296 part/admin.py:144 templates/js/translated/build.js:1744 -#: templates/js/translated/build.js:2630 +#: build/api.py:295 part/admin.py:144 templates/js/translated/build.js:1919 +#: templates/js/translated/build.js:2823 #: templates/js/translated/sales_order.js:1965 #: templates/js/translated/table_filters.js:571 msgid "Allocated" msgstr "" -#: build/api.py:304 company/models.py:879 company/serializers.py:386 +#: build/api.py:303 company/models.py:879 company/serializers.py:388 #: company/templates/company/supplier_part.html:114 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:17 -#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2562 +#: templates/js/translated/bom.js:1162 templates/js/translated/build.js:2755 #: templates/js/translated/index.js:123 #: templates/js/translated/model_renderers.js:234 -#: templates/js/translated/part.js:692 templates/js/translated/part.js:694 -#: templates/js/translated/part.js:699 +#: templates/js/translated/part.js:694 templates/js/translated/part.js:696 +#: templates/js/translated/part.js:701 #: templates/js/translated/table_filters.js:340 #: templates/js/translated/table_filters.js:575 msgid "Available" @@ -794,7 +802,7 @@ msgstr "空闲" #: report/templates/report/inventree_build_order_report.html:105 #: stock/serializers.py:84 templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:972 templates/js/translated/stock.js:2892 +#: templates/js/translated/build.js:1147 templates/js/translated/stock.js:2973 msgid "Build Order" msgstr "生产订单" @@ -845,17 +853,17 @@ msgstr "无法取消订单" msgid "Build Order Reference" msgstr "相关生产订单" -#: build/models.py:234 build/serializers.py:1189 order/models.py:463 -#: order/models.py:926 order/models.py:1289 order/models.py:2046 -#: part/admin.py:411 part/models.py:4170 part/templates/part/upload_bom.html:54 +#: build/models.py:234 build/serializers.py:1233 order/models.py:463 +#: order/models.py:935 order/models.py:1298 order/models.py:2055 +#: part/admin.py:411 part/models.py:4242 part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_purchase_order_report.html:28 #: report/templates/report/inventree_return_order_report.html:26 #: report/templates/report/inventree_sales_order_report.html:28 #: templates/js/translated/bom.js:770 templates/js/translated/bom.js:973 -#: templates/js/translated/build.js:2513 templates/js/translated/order.js:291 -#: templates/js/translated/pricing.js:386 -#: templates/js/translated/purchase_order.js:2065 +#: templates/js/translated/build.js:1013 templates/js/translated/build.js:2688 +#: templates/js/translated/order.js:291 templates/js/translated/pricing.js:386 +#: templates/js/translated/purchase_order.js:2136 #: templates/js/translated/return_order.js:728 #: templates/js/translated/sales_order.js:1854 msgid "Reference" @@ -876,15 +884,15 @@ msgstr "上级生产" msgid "BuildOrder to which this build is allocated" msgstr "此次生产匹配的订单" -#: build/models.py:259 build/serializers.py:1184 +#: build/models.py:259 build/serializers.py:1224 #: build/templates/build/build_base.html:97 #: build/templates/build/detail.html:29 company/models.py:1034 order/api.py:759 -#: order/models.py:1419 order/models.py:1574 order/models.py:1575 -#: part/api.py:1480 part/api.py:1776 part/models.py:396 part/models.py:3022 -#: part/models.py:3166 part/models.py:3314 part/models.py:3335 -#: part/models.py:3357 part/models.py:3493 part/models.py:3827 -#: part/models.py:3990 part/models.py:4121 part/models.py:4480 -#: part/serializers.py:1148 part/serializers.py:1758 +#: order/models.py:1428 order/models.py:1583 order/models.py:1584 +#: part/api.py:1504 part/api.py:1800 part/models.py:397 part/models.py:3088 +#: part/models.py:3232 part/models.py:3380 part/models.py:3401 +#: part/models.py:3423 part/models.py:3559 part/models.py:3899 +#: part/models.py:4062 part/models.py:4193 part/models.py:4552 +#: part/serializers.py:1182 part/serializers.py:1812 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -895,36 +903,36 @@ msgstr "此次生产匹配的订单" #: report/templates/report/inventree_return_order_report.html:24 #: report/templates/report/inventree_sales_order_report.html:27 #: report/templates/report/inventree_stock_location_report.html:102 -#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:443 -#: stock/serializers.py:878 templates/InvenTree/search.html:82 +#: stock/serializers.py:111 stock/serializers.py:159 stock/serializers.py:446 +#: stock/serializers.py:883 templates/InvenTree/search.html:82 #: templates/email/build_order_completed.html:17 #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:15 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:546 templates/js/translated/bom.js:632 +#: templates/js/translated/barcode.js:577 templates/js/translated/bom.js:632 #: templates/js/translated/bom.js:769 templates/js/translated/bom.js:905 -#: templates/js/translated/build.js:1312 templates/js/translated/build.js:1743 -#: templates/js/translated/build.js:2162 templates/js/translated/build.js:2335 -#: templates/js/translated/company.js:348 +#: templates/js/translated/build.js:1004 templates/js/translated/build.js:1487 +#: templates/js/translated/build.js:1918 templates/js/translated/build.js:2337 +#: templates/js/translated/build.js:2510 templates/js/translated/company.js:348 #: templates/js/translated/company.js:1116 #: templates/js/translated/company.js:1271 #: templates/js/translated/company.js:1559 templates/js/translated/index.js:109 -#: templates/js/translated/part.js:1947 templates/js/translated/part.js:2019 -#: templates/js/translated/part.js:2327 templates/js/translated/pricing.js:369 +#: templates/js/translated/part.js:1949 templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2330 templates/js/translated/pricing.js:369 #: templates/js/translated/purchase_order.js:751 -#: templates/js/translated/purchase_order.js:1304 -#: templates/js/translated/purchase_order.js:1848 -#: templates/js/translated/purchase_order.js:2007 +#: templates/js/translated/purchase_order.js:1367 +#: templates/js/translated/purchase_order.js:1919 +#: templates/js/translated/purchase_order.js:2078 #: templates/js/translated/return_order.js:538 #: templates/js/translated/return_order.js:709 #: templates/js/translated/sales_order.js:300 #: templates/js/translated/sales_order.js:1233 #: templates/js/translated/sales_order.js:1634 #: templates/js/translated/sales_order.js:1832 -#: templates/js/translated/stock.js:676 templates/js/translated/stock.js:842 -#: templates/js/translated/stock.js:1058 templates/js/translated/stock.js:1997 -#: templates/js/translated/stock.js:2857 templates/js/translated/stock.js:3090 -#: templates/js/translated/stock.js:3236 +#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 +#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:2078 +#: templates/js/translated/stock.js:2938 templates/js/translated/stock.js:3171 +#: templates/js/translated/stock.js:3317 msgid "Part" msgstr "商品" @@ -940,8 +948,8 @@ msgstr "相关销售订单" msgid "SalesOrder to which this build is allocated" msgstr "此次生产匹配的销售订单" -#: build/models.py:281 build/serializers.py:1003 -#: templates/js/translated/build.js:1731 +#: build/models.py:281 build/serializers.py:1009 +#: templates/js/translated/build.js:1906 #: templates/js/translated/sales_order.js:1221 msgid "Source Location" msgstr "来源地点" @@ -982,18 +990,19 @@ msgstr "生产状态" msgid "Build status code" msgstr "生产状态代码" -#: build/models.py:324 build/serializers.py:290 order/serializers.py:629 -#: stock/models.py:839 stock/serializers.py:76 stock/serializers.py:1524 -#: templates/js/translated/purchase_order.js:1129 +#: build/models.py:324 build/serializers.py:296 build/serializers.py:1145 +#: order/serializers.py:633 stock/models.py:837 stock/serializers.py:76 +#: stock/serializers.py:1529 templates/js/translated/purchase_order.js:1129 +#: templates/js/translated/stock.js:1195 msgid "Batch Code" msgstr "批量代码" -#: build/models.py:328 build/serializers.py:291 +#: build/models.py:328 build/serializers.py:297 msgid "Batch code for this build output" msgstr "此生产产出的批量代码" #: build/models.py:331 order/models.py:316 order/serializers.py:127 -#: part/models.py:1125 part/templates/part/part_base.html:310 +#: part/models.py:1191 part/templates/part/part_base.html:319 #: templates/js/translated/return_order.js:338 #: templates/js/translated/sales_order.js:863 msgid "Creation Date" @@ -1007,8 +1016,8 @@ msgstr "预计完成日期" msgid "Target date for build completion. Build will be overdue after this date." msgstr "生产完成的目标日期。生产将在此日期之后逾期。" -#: build/models.py:339 order/models.py:521 order/models.py:2091 -#: templates/js/translated/build.js:2247 +#: build/models.py:339 order/models.py:521 order/models.py:2100 +#: templates/js/translated/build.js:2422 msgid "Completion Date" msgstr "完成日期:" @@ -1016,7 +1025,7 @@ msgstr "完成日期:" msgid "completed by" msgstr "完成人" -#: build/models.py:353 templates/js/translated/build.js:2207 +#: build/models.py:353 templates/js/translated/build.js:2382 msgid "Issued by" msgstr "发布者" @@ -1028,12 +1037,12 @@ msgstr "发布此生产订单的用户" #: build/templates/build/detail.html:122 common/models.py:152 #: order/models.py:334 order/templates/order/order_base.html:217 #: order/templates/order/return_order_base.html:188 -#: order/templates/order/sales_order_base.html:232 part/models.py:1142 -#: part/templates/part/part_base.html:390 +#: order/templates/order/sales_order_base.html:232 part/models.py:1208 +#: part/templates/part/part_base.html:399 #: report/templates/report/inventree_build_order_report.html:158 #: templates/InvenTree/settings/settings_staff_js.html:150 -#: templates/js/translated/build.js:2219 -#: templates/js/translated/purchase_order.js:1763 +#: templates/js/translated/build.js:2394 +#: templates/js/translated/purchase_order.js:1834 #: templates/js/translated/return_order.js:358 #: templates/js/translated/table_filters.js:531 msgid "Responsible" @@ -1049,14 +1058,14 @@ msgstr "构建此订单的用户或组" #: order/templates/order/order_base.html:167 #: order/templates/order/return_order_base.html:145 #: order/templates/order/sales_order_base.html:184 -#: part/templates/part/part_base.html:383 stock/models.py:835 +#: part/templates/part/part_base.html:392 stock/models.py:833 #: stock/templates/stock/item_base.html:200 #: templates/js/translated/company.js:1019 msgid "External Link" msgstr "外部链接" -#: build/models.py:369 common/models.py:3230 part/models.py:960 -#: stock/models.py:835 +#: build/models.py:369 common/models.py:3236 part/models.py:1026 +#: stock/models.py:833 msgid "Link to external URL" msgstr "链接到外部 URL" @@ -1069,10 +1078,10 @@ msgid "Priority of this build order" msgstr "此构建订单的优先级" #: build/models.py:383 common/models.py:122 common/models.py:136 -#: order/admin.py:18 order/models.py:298 order/serializers.py:108 +#: order/admin.py:18 order/models.py:298 #: templates/InvenTree/settings/settings_staff_js.html:146 -#: templates/js/translated/build.js:2144 -#: templates/js/translated/purchase_order.js:1710 +#: templates/js/translated/build.js:2319 +#: templates/js/translated/purchase_order.js:1781 #: templates/js/translated/return_order.js:317 #: templates/js/translated/sales_order.js:842 #: templates/js/translated/table_filters.js:48 @@ -1113,20 +1122,20 @@ msgstr "生产产出已完成" msgid "Build output does not match Build Order" msgstr "生产产出与订单不匹配" -#: build/models.py:960 build/serializers.py:223 build/serializers.py:272 -#: build/serializers.py:870 order/models.py:559 order/serializers.py:461 -#: order/serializers.py:624 part/serializers.py:1515 part/serializers.py:1921 -#: stock/models.py:678 stock/models.py:1496 stock/serializers.py:661 +#: build/models.py:960 build/serializers.py:229 build/serializers.py:278 +#: build/serializers.py:876 order/models.py:559 order/serializers.py:462 +#: order/serializers.py:628 part/serializers.py:1553 part/serializers.py:1975 +#: stock/models.py:678 stock/models.py:1498 stock/serializers.py:666 msgid "Quantity must be greater than zero" msgstr "数量必须大于0" -#: build/models.py:965 build/serializers.py:228 +#: build/models.py:965 build/serializers.py:234 #, fuzzy #| msgid "Quantity must be greater than zero" msgid "Quantity cannot be greater than the output quantity" msgstr "数量必须大于0" -#: build/models.py:1025 build/serializers.py:551 +#: build/models.py:1025 build/serializers.py:557 #, python-brace-format msgid "Build output {serial} has not passed all required tests" msgstr "" @@ -1143,13 +1152,13 @@ msgstr "删除参数" msgid "Build object" msgstr "生产备注" -#: build/models.py:1405 build/models.py:1661 build/serializers.py:210 -#: build/serializers.py:257 build/serializers.py:1194 +#: build/models.py:1405 build/models.py:1661 build/serializers.py:216 +#: build/serializers.py:263 build/serializers.py:1240 #: build/templates/build/build_base.html:102 -#: build/templates/build/detail.html:34 common/models.py:2544 -#: order/models.py:1272 order/models.py:1957 order/serializers.py:1383 +#: build/templates/build/detail.html:34 common/models.py:2550 +#: order/models.py:1281 order/models.py:1966 order/serializers.py:1405 #: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:410 -#: part/forms.py:48 part/models.py:3180 part/models.py:4143 +#: part/forms.py:48 part/models.py:3246 part/models.py:4215 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_bill_of_materials_report.html:138 @@ -1159,35 +1168,35 @@ msgstr "生产备注" #: report/templates/report/inventree_stock_location_report.html:104 #: report/templates/report/inventree_test_report.html:90 #: report/templates/report/inventree_test_report.html:169 stock/admin.py:159 -#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:652 +#: stock/serializers.py:127 stock/serializers.py:167 stock/serializers.py:657 #: stock/templates/stock/item_base.html:287 #: stock/templates/stock/item_base.html:295 #: stock/templates/stock/item_base.html:342 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:548 templates/js/translated/bom.js:771 -#: templates/js/translated/bom.js:981 templates/js/translated/build.js:521 -#: templates/js/translated/build.js:737 templates/js/translated/build.js:1369 -#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2357 +#: templates/js/translated/barcode.js:579 templates/js/translated/bom.js:771 +#: templates/js/translated/bom.js:981 templates/js/translated/build.js:522 +#: templates/js/translated/build.js:738 templates/js/translated/build.js:1544 +#: templates/js/translated/build.js:1921 templates/js/translated/build.js:2532 #: templates/js/translated/company.js:1818 #: templates/js/translated/model_renderers.js:236 -#: templates/js/translated/order.js:304 templates/js/translated/part.js:965 -#: templates/js/translated/part.js:1815 templates/js/translated/part.js:3345 +#: templates/js/translated/order.js:304 templates/js/translated/part.js:967 +#: templates/js/translated/part.js:1817 templates/js/translated/part.js:3361 #: templates/js/translated/pricing.js:381 #: templates/js/translated/pricing.js:474 #: templates/js/translated/pricing.js:522 #: templates/js/translated/pricing.js:616 #: templates/js/translated/purchase_order.js:754 -#: templates/js/translated/purchase_order.js:1852 -#: templates/js/translated/purchase_order.js:2071 +#: templates/js/translated/purchase_order.js:1923 +#: templates/js/translated/purchase_order.js:2142 #: templates/js/translated/sales_order.js:317 #: templates/js/translated/sales_order.js:1235 #: templates/js/translated/sales_order.js:1554 #: templates/js/translated/sales_order.js:1644 #: templates/js/translated/sales_order.js:1734 #: templates/js/translated/sales_order.js:1860 -#: templates/js/translated/stock.js:564 templates/js/translated/stock.js:702 -#: templates/js/translated/stock.js:873 templates/js/translated/stock.js:3021 -#: templates/js/translated/stock.js:3104 +#: templates/js/translated/stock.js:565 templates/js/translated/stock.js:703 +#: templates/js/translated/stock.js:874 templates/js/translated/stock.js:3102 +#: templates/js/translated/stock.js:3185 msgid "Quantity" msgstr "数量" @@ -1206,11 +1215,11 @@ msgstr "生产项必须指定生产产出,因为主部件已经被标记为可 msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})" -#: build/models.py:1505 order/models.py:1908 +#: build/models.py:1505 order/models.py:1917 msgid "Stock item is over-allocated" msgstr "库存物品分配过度!" -#: build/models.py:1511 order/models.py:1911 +#: build/models.py:1511 order/models.py:1920 msgid "Allocation quantity must be greater than zero" msgstr "分配数量必须大于0" @@ -1224,21 +1233,21 @@ msgstr "序列化库存的数量必须是 1" msgid "Selected stock item does not match BOM line" msgstr "在BOM中找不到选定的库存项" -#: build/models.py:1648 build/serializers.py:850 order/serializers.py:1227 -#: order/serializers.py:1248 stock/models.py:359 stock/serializers.py:93 -#: stock/serializers.py:755 stock/serializers.py:1243 stock/serializers.py:1355 +#: build/models.py:1648 build/serializers.py:856 order/serializers.py:1249 +#: order/serializers.py:1270 stock/models.py:359 stock/serializers.py:93 +#: stock/serializers.py:760 stock/serializers.py:1248 stock/serializers.py:1360 #: stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:194 -#: templates/js/translated/build.js:1745 +#: templates/js/translated/build.js:1920 #: templates/js/translated/sales_order.js:301 #: templates/js/translated/sales_order.js:1234 #: templates/js/translated/sales_order.js:1535 #: templates/js/translated/sales_order.js:1540 #: templates/js/translated/sales_order.js:1641 #: templates/js/translated/sales_order.js:1728 -#: templates/js/translated/stock.js:677 templates/js/translated/stock.js:843 -#: templates/js/translated/stock.js:2977 +#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 +#: templates/js/translated/stock.js:3058 msgid "Stock Item" msgstr "库存项" @@ -1258,396 +1267,463 @@ msgstr "安装到" msgid "Destination stock item" msgstr "目标库存项" -#: build/serializers.py:89 build/serializers.py:1185 part/admin.py:41 -#: part/admin.py:405 part/models.py:3992 part/stocktake.py:220 +#: build/serializers.py:93 build/serializers.py:1142 build/serializers.py:1225 +#: part/admin.py:41 part/admin.py:405 part/models.py:4064 part/stocktake.py:220 #: stock/admin.py:156 msgid "Part Name" msgstr "" -#: build/serializers.py:160 build/serializers.py:879 -#: templates/js/translated/build.js:1322 +#: build/serializers.py:105 +#, fuzzy +#| msgid "Part QR Code" +msgid "Project Code Label" +msgstr "商品二维码" + +#: build/serializers.py:166 build/serializers.py:885 +#: templates/js/translated/build.js:1044 templates/js/translated/build.js:1497 msgid "Build Output" msgstr "生产产出" -#: build/serializers.py:172 +#: build/serializers.py:178 msgid "Build output does not match the parent build" msgstr "生产产出与对应生产不匹配" -#: build/serializers.py:176 +#: build/serializers.py:182 msgid "Output part does not match BuildOrder part" msgstr "产出部件与生产订单部件不匹配" -#: build/serializers.py:180 +#: build/serializers.py:186 msgid "This build output has already been completed" msgstr "此生产产出已经完成" -#: build/serializers.py:191 +#: build/serializers.py:197 msgid "This build output is not fully allocated" msgstr "生产产出未被完成分配" -#: build/serializers.py:211 build/serializers.py:258 +#: build/serializers.py:217 build/serializers.py:264 msgid "Enter quantity for build output" msgstr "输入生产产出数量" -#: build/serializers.py:279 +#: build/serializers.py:285 msgid "Integer quantity required for trackable parts" msgstr "对于可追踪的部件,需要整数型数值" -#: build/serializers.py:282 +#: build/serializers.py:288 msgid "Integer quantity required, as the bill of materials contains trackable parts" msgstr "需要整数型数值,因为BOM包含可追踪的部件" -#: build/serializers.py:297 order/serializers.py:637 order/serializers.py:1387 -#: stock/serializers.py:672 templates/js/translated/purchase_order.js:1153 -#: templates/js/translated/stock.js:367 templates/js/translated/stock.js:565 +#: build/serializers.py:303 order/serializers.py:641 order/serializers.py:1409 +#: stock/serializers.py:677 templates/js/translated/purchase_order.js:1154 +#: templates/js/translated/stock.js:368 templates/js/translated/stock.js:566 msgid "Serial Numbers" msgstr "序列号" -#: build/serializers.py:298 +#: build/serializers.py:304 msgid "Enter serial numbers for build outputs" msgstr "输入生产产出的序列号" -#: build/serializers.py:303 build/serializers.py:444 build/serializers.py:516 -#: order/serializers.py:613 order/serializers.py:721 order/serializers.py:1714 -#: part/serializers.py:1168 stock/serializers.py:102 stock/serializers.py:683 -#: stock/serializers.py:843 stock/serializers.py:939 stock/serializers.py:1387 -#: stock/serializers.py:1643 stock/templates/stock/item_base.html:394 -#: templates/js/translated/barcode.js:547 -#: templates/js/translated/barcode.js:795 templates/js/translated/build.js:1001 -#: templates/js/translated/build.js:2372 -#: templates/js/translated/purchase_order.js:1178 -#: templates/js/translated/purchase_order.js:1268 +#: build/serializers.py:309 build/serializers.py:450 build/serializers.py:522 +#: order/serializers.py:617 order/serializers.py:741 order/serializers.py:1736 +#: part/serializers.py:1202 stock/serializers.py:102 stock/serializers.py:688 +#: stock/serializers.py:848 stock/serializers.py:944 stock/serializers.py:1392 +#: stock/serializers.py:1648 stock/templates/stock/item_base.html:394 +#: templates/js/translated/barcode.js:578 +#: templates/js/translated/barcode.js:826 templates/js/translated/build.js:1034 +#: templates/js/translated/build.js:1176 templates/js/translated/build.js:2547 +#: templates/js/translated/purchase_order.js:1210 +#: templates/js/translated/purchase_order.js:1320 #: templates/js/translated/sales_order.js:1547 #: templates/js/translated/sales_order.js:1655 #: templates/js/translated/sales_order.js:1663 #: templates/js/translated/sales_order.js:1742 -#: templates/js/translated/stock.js:678 templates/js/translated/stock.js:844 -#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:2201 -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:679 templates/js/translated/stock.js:845 +#: templates/js/translated/stock.js:1063 templates/js/translated/stock.js:2282 +#: templates/js/translated/stock.js:2952 msgid "Location" msgstr "地点" -#: build/serializers.py:304 +#: build/serializers.py:310 #, fuzzy #| msgid "Stock item created" msgid "Stock location for build output" msgstr "库存项已创建" -#: build/serializers.py:318 +#: build/serializers.py:324 msgid "Auto Allocate Serial Numbers" msgstr "自动分配序列号" -#: build/serializers.py:319 +#: build/serializers.py:325 msgid "Automatically allocate required items with matching serial numbers" msgstr "自动为所需项分配对应的序列号" -#: build/serializers.py:334 +#: build/serializers.py:340 #, fuzzy #| msgid "Integer quantity required for trackable parts" msgid "Serial numbers must be provided for trackable parts" msgstr "对于可追踪的部件,需要整数型数值" -#: build/serializers.py:359 stock/api.py:1033 +#: build/serializers.py:365 stock/api.py:1033 msgid "The following serial numbers already exist or are invalid" msgstr "以下序列号已存在或无效" -#: build/serializers.py:406 build/serializers.py:468 build/serializers.py:557 +#: build/serializers.py:412 build/serializers.py:474 build/serializers.py:563 msgid "A list of build outputs must be provided" msgstr "必须提供生产产出列表" -#: build/serializers.py:445 +#: build/serializers.py:451 #, fuzzy #| msgid "Stock item created" msgid "Stock location for scrapped outputs" msgstr "库存项已创建" -#: build/serializers.py:451 +#: build/serializers.py:457 #, fuzzy #| msgid "Stock Locations" msgid "Discard Allocations" msgstr "仓储地点" -#: build/serializers.py:452 +#: build/serializers.py:458 msgid "Discard any stock allocations for scrapped outputs" msgstr "" -#: build/serializers.py:457 +#: build/serializers.py:463 #, fuzzy #| msgid "Location for completed build outputs" msgid "Reason for scrapping build output(s)" msgstr "已完成生产产出的仓储地点" -#: build/serializers.py:517 +#: build/serializers.py:523 msgid "Location for completed build outputs" msgstr "已完成生产产出的仓储地点" -#: build/serializers.py:523 build/templates/build/build_base.html:151 -#: build/templates/build/detail.html:62 order/models.py:950 -#: order/models.py:2070 order/serializers.py:645 stock/admin.py:164 -#: stock/serializers.py:990 stock/serializers.py:1531 +#: build/serializers.py:529 build/templates/build/build_base.html:151 +#: build/templates/build/detail.html:62 order/models.py:959 +#: order/models.py:2079 order/serializers.py:649 stock/admin.py:164 +#: stock/serializers.py:995 stock/serializers.py:1536 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2191 -#: templates/js/translated/purchase_order.js:1308 -#: templates/js/translated/purchase_order.js:1722 +#: templates/js/translated/barcode.js:252 templates/js/translated/build.js:2366 +#: templates/js/translated/purchase_order.js:1371 +#: templates/js/translated/purchase_order.js:1793 #: templates/js/translated/return_order.js:330 #: templates/js/translated/sales_order.js:855 -#: templates/js/translated/stock.js:2176 templates/js/translated/stock.js:2995 -#: templates/js/translated/stock.js:3120 +#: templates/js/translated/stock.js:2257 templates/js/translated/stock.js:3076 +#: templates/js/translated/stock.js:3201 msgid "Status" msgstr "状态" -#: build/serializers.py:529 +#: build/serializers.py:535 msgid "Accept Incomplete Allocation" msgstr "接受不完整的分配" -#: build/serializers.py:530 +#: build/serializers.py:536 msgid "Complete outputs if stock has not been fully allocated" msgstr "如果库存尚未完成分配,完成产出" -#: build/serializers.py:615 +#: build/serializers.py:621 #, fuzzy #| msgid "Remove Allocated Stock" msgid "Consume Allocated Stock" msgstr "移除已分配的库存" -#: build/serializers.py:616 +#: build/serializers.py:622 #, fuzzy #| msgid "Subtract any stock which has already been allocated to this build" msgid "Consume any stock which has already been allocated to this build" msgstr "减去已经分配至此生产的库存" -#: build/serializers.py:622 +#: build/serializers.py:628 msgid "Remove Incomplete Outputs" msgstr "移除未完成的产出" -#: build/serializers.py:623 +#: build/serializers.py:629 msgid "Delete any build outputs which have not been completed" msgstr "删除所有未完成的生产产出" -#: build/serializers.py:650 +#: build/serializers.py:656 msgid "Not permitted" msgstr "" -#: build/serializers.py:651 +#: build/serializers.py:657 msgid "Accept as consumed by this build order" msgstr "接受此构建订单所消耗的内容" -#: build/serializers.py:652 +#: build/serializers.py:658 msgid "Deallocate before completing this build order" msgstr "在完成此构建订单前取消分配" -#: build/serializers.py:682 +#: build/serializers.py:688 msgid "Overallocated Stock" msgstr "超出分配的库存" -#: build/serializers.py:684 +#: build/serializers.py:690 msgid "How do you want to handle extra stock items assigned to the build order" msgstr "你想如何处理分配给构建订单的额外库存物品" -#: build/serializers.py:694 +#: build/serializers.py:700 msgid "Some stock items have been overallocated" msgstr "一些库存项已被过度分配" -#: build/serializers.py:699 +#: build/serializers.py:705 msgid "Accept Unallocated" msgstr "接受未分配的" -#: build/serializers.py:700 +#: build/serializers.py:706 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "接受库存项未被完成分配至此生产订单" -#: build/serializers.py:710 templates/js/translated/build.js:315 +#: build/serializers.py:716 templates/js/translated/build.js:316 msgid "Required stock has not been fully allocated" msgstr "所需库存尚未完全分配" -#: build/serializers.py:715 order/serializers.py:319 order/serializers.py:1290 +#: build/serializers.py:721 order/serializers.py:320 order/serializers.py:1312 msgid "Accept Incomplete" msgstr "接受未完成" -#: build/serializers.py:716 +#: build/serializers.py:722 msgid "Accept that the required number of build outputs have not been completed" msgstr "接受所需的生产产出未完成" -#: build/serializers.py:726 templates/js/translated/build.js:319 +#: build/serializers.py:732 templates/js/translated/build.js:320 msgid "Required build quantity has not been completed" msgstr "所需生产数量尚未完成" -#: build/serializers.py:735 templates/js/translated/build.js:303 +#: build/serializers.py:741 templates/js/translated/build.js:304 msgid "Build order has incomplete outputs" msgstr "生产订单有未完成的产出" -#: build/serializers.py:773 +#: build/serializers.py:779 #, fuzzy #| msgid "Build actions" msgid "Build Line" msgstr "生产操作" -#: build/serializers.py:783 +#: build/serializers.py:789 msgid "Build output" msgstr "生产产出" -#: build/serializers.py:791 +#: build/serializers.py:797 msgid "Build output must point to the same build" msgstr "生产产出必须指向相同的生产" -#: build/serializers.py:827 +#: build/serializers.py:833 #, fuzzy #| msgid "Delete parameters" msgid "Build Line Item" msgstr "删除参数" -#: build/serializers.py:841 +#: build/serializers.py:847 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part 必须与生产订单指向相同的部件" -#: build/serializers.py:856 stock/serializers.py:1256 +#: build/serializers.py:862 stock/serializers.py:1261 msgid "Item must be in stock" msgstr "项目必须在库存中" -#: build/serializers.py:904 order/serializers.py:1281 +#: build/serializers.py:910 order/serializers.py:1303 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "可用量 ({q}) 超出了限制" -#: build/serializers.py:910 +#: build/serializers.py:916 msgid "Build output must be specified for allocation of tracked parts" msgstr "对于被追踪的部件的分配,必须指定生产产出" -#: build/serializers.py:917 +#: build/serializers.py:923 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "对于未被追踪的部件,无法指定生产产出" -#: build/serializers.py:941 order/serializers.py:1533 +#: build/serializers.py:947 order/serializers.py:1555 msgid "Allocation items must be provided" msgstr "必须提供分配的项" -#: build/serializers.py:1004 +#: build/serializers.py:1010 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "部件来源的仓储地点(留空则可来源于任何仓储地点)" -#: build/serializers.py:1012 +#: build/serializers.py:1018 msgid "Exclude Location" msgstr "排除地点" -#: build/serializers.py:1013 +#: build/serializers.py:1019 msgid "Exclude stock items from this selected location" msgstr "从该选定的仓储地点排除库存项" -#: build/serializers.py:1018 +#: build/serializers.py:1024 msgid "Interchangeable Stock" msgstr "可互换的库存" -#: build/serializers.py:1019 +#: build/serializers.py:1025 msgid "Stock items in multiple locations can be used interchangeably" msgstr "多处地点的库存项可以互换使用" -#: build/serializers.py:1024 +#: build/serializers.py:1030 msgid "Substitute Stock" msgstr "可替换的库存" -#: build/serializers.py:1025 +#: build/serializers.py:1031 msgid "Allow allocation of substitute parts" msgstr "允许分配可替换的部件" -#: build/serializers.py:1030 +#: build/serializers.py:1036 msgid "Optional Items" msgstr "可选项目" -#: build/serializers.py:1031 +#: build/serializers.py:1037 msgid "Allocate optional BOM items to build order" msgstr "分配可选的BOM项目来建立订单" -#: build/serializers.py:1053 +#: build/serializers.py:1059 msgid "Failed to start auto-allocation task" msgstr "" -#: build/serializers.py:1095 +#: build/serializers.py:1134 #, fuzzy #| msgid "Supplier Part Orders" msgid "Supplier Part Number" msgstr "供应商商品订单" -#: build/serializers.py:1096 company/models.py:500 +#: build/serializers.py:1135 company/models.py:500 msgid "Manufacturer Part Number" msgstr "制造商商品编号" -#: build/serializers.py:1097 stock/admin.py:53 stock/admin.py:175 -#: stock/serializers.py:454 +#: build/serializers.py:1136 stock/admin.py:53 stock/admin.py:175 +#: stock/serializers.py:457 msgid "Location Name" msgstr "" -#: build/serializers.py:1098 +#: build/serializers.py:1137 #, fuzzy #| msgid "Build Order Reference" msgid "Build Reference" msgstr "相关生产订单" -#: build/serializers.py:1099 +#: build/serializers.py:1138 #, fuzzy #| msgid "Reference" msgid "BOM Reference" msgstr "引用" -#: build/serializers.py:1186 part/admin.py:402 part/models.py:3993 +#: build/serializers.py:1141 part/admin.py:39 part/admin.py:398 +#: part/models.py:4063 part/stocktake.py:219 stock/admin.py:152 +msgid "Part ID" +msgstr "商品ID" + +#: build/serializers.py:1143 build/serializers.py:1226 part/admin.py:402 +#: part/models.py:4065 msgid "Part IPN" msgstr "" -#: build/serializers.py:1192 common/models.py:1488 part/admin.py:113 -#: part/models.py:1068 templates/js/translated/table_filters.js:147 +#: build/serializers.py:1146 +#: report/templates/report/inventree_return_order_report.html:25 +#: report/templates/report/inventree_test_report.html:88 stock/models.py:823 +#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 +#: templates/js/translated/build.js:520 templates/js/translated/build.js:1542 +#: templates/js/translated/build.js:2530 +#: templates/js/translated/model_renderers.js:230 +#: templates/js/translated/return_order.js:539 +#: templates/js/translated/return_order.js:723 +#: templates/js/translated/sales_order.js:315 +#: templates/js/translated/sales_order.js:1647 +#: templates/js/translated/sales_order.js:1732 +#: templates/js/translated/stock.js:597 +msgid "Serial Number" +msgstr "序列号" + +#: build/serializers.py:1159 stock/serializers.py:590 +#: templates/js/translated/build.js:1019 templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:2519 +#, fuzzy +#| msgid "Allocated Parts" +msgid "Allocated Quantity" +msgstr "已分配的部件" + +#: build/serializers.py:1160 stock/templates/stock/item_base.html:340 +msgid "Available Quantity" +msgstr "" + +#: build/serializers.py:1228 part/admin.py:45 part/stocktake.py:221 +msgid "Part Description" +msgstr "" + +#: build/serializers.py:1229 +#, fuzzy +#| msgid "Part Category" +msgid "Part Category ID" +msgstr "商品类别" + +#: build/serializers.py:1230 +#, fuzzy +#| msgid "Part Category" +msgid "Part Category Name" +msgstr "商品类别" + +#: build/serializers.py:1236 common/models.py:1494 part/admin.py:113 +#: part/models.py:1134 templates/js/translated/table_filters.js:147 #: templates/js/translated/table_filters.js:223 #: templates/js/translated/table_filters.js:776 msgid "Trackable" msgstr "可追踪" -#: build/serializers.py:1196 part/models.py:4000 part/models.py:4472 +#: build/serializers.py:1237 +msgid "Inherited" +msgstr "" + +#: build/serializers.py:1238 part/models.py:4275 +#: part/templates/part/upload_bom.html:56 templates/js/translated/bom.js:1046 +#: templates/js/translated/build.js:2714 +msgid "Allow Variants" +msgstr "" + +#: build/serializers.py:1242 part/models.py:4072 part/models.py:4544 #: stock/api.py:796 msgid "BOM Item" msgstr "BOM项" -#: build/serializers.py:1205 templates/js/translated/index.js:130 +#: build/serializers.py:1251 build/templates/build/detail.html:236 +#: build/templates/build/sidebar.html:16 templates/js/translated/index.js:130 msgid "Allocated Stock" msgstr "" -#: build/serializers.py:1210 part/admin.py:132 part/bom.py:173 -#: part/serializers.py:856 part/serializers.py:1533 +#: build/serializers.py:1256 part/admin.py:132 part/bom.py:173 +#: part/serializers.py:889 part/serializers.py:1571 #: part/templates/part/part_base.html:210 templates/js/translated/bom.js:1208 -#: templates/js/translated/build.js:2614 templates/js/translated/part.js:709 -#: templates/js/translated/part.js:2152 +#: templates/js/translated/build.js:2807 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:2154 #: templates/js/translated/table_filters.js:170 msgid "On Order" msgstr "" -#: build/serializers.py:1215 part/serializers.py:1535 -#: templates/js/translated/build.js:2618 +#: build/serializers.py:1261 part/serializers.py:1573 +#: templates/js/translated/build.js:2811 #: templates/js/translated/table_filters.js:360 msgid "In Production" msgstr "正在生产" -#: build/serializers.py:1220 part/bom.py:172 part/serializers.py:1558 +#: build/serializers.py:1266 part/bom.py:172 part/serializers.py:1598 #: part/templates/part/part_base.html:192 #: templates/js/translated/sales_order.js:1929 msgid "Available Stock" msgstr "可用库存" -#: build/serializers.py:1224 +#: build/serializers.py:1270 #, fuzzy #| msgid "Substitute Stock" msgid "Available Substitute Stock" msgstr "可替换的库存" -#: build/serializers.py:1225 +#: build/serializers.py:1271 #, fuzzy #| msgid "Available Stock" msgid "Available Variant Stock" msgstr "可用库存" -#: build/serializers.py:1226 +#: build/serializers.py:1272 #, fuzzy #| msgid "Available Stock" msgid "Total Available Stock" msgstr "可用库存" -#: build/serializers.py:1227 part/serializers.py:862 +#: build/serializers.py:1273 part/serializers.py:896 #, fuzzy #| msgid "External Link" msgid "External Stock" @@ -1668,7 +1744,7 @@ msgstr "生产中" msgid "Cancelled" msgstr "已取消" -#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:468 +#: build/status_codes.py:14 generic/states/tests.py:19 importer/models.py:501 #: importer/status_codes.py:19 order/status_codes.py:14 #: order/status_codes.py:44 order/status_codes.py:69 #: order/templates/order/order_base.html:158 @@ -1726,8 +1802,8 @@ msgstr "" #: part/templates/part/part_base.html:47 #: stock/templates/stock/item_base.html:47 #: stock/templates/stock/location.html:59 -#: templates/js/translated/barcode.js:496 -#: templates/js/translated/barcode.js:501 +#: templates/js/translated/barcode.js:527 +#: templates/js/translated/barcode.js:532 msgid "Unlink Barcode" msgstr "" @@ -1804,14 +1880,14 @@ msgstr "库存尚未被完全分配到此构建订单" #: build/templates/build/build_base.html:160 #: build/templates/build/detail.html:138 order/models.py:309 -#: order/models.py:1307 order/serializers.py:174 +#: order/models.py:1316 order/serializers.py:175 #: order/templates/order/order_base.html:186 #: order/templates/order/return_order_base.html:164 #: order/templates/order/sales_order_base.html:196 #: report/templates/report/inventree_build_order_report.html:125 -#: templates/js/translated/build.js:2239 templates/js/translated/part.js:1834 -#: templates/js/translated/purchase_order.js:1739 -#: templates/js/translated/purchase_order.js:2147 +#: templates/js/translated/build.js:2414 templates/js/translated/part.js:1836 +#: templates/js/translated/purchase_order.js:1810 +#: templates/js/translated/purchase_order.js:2218 #: templates/js/translated/return_order.js:346 #: templates/js/translated/return_order.js:750 #: templates/js/translated/sales_order.js:871 @@ -1842,8 +1918,8 @@ msgid "Completed Outputs" msgstr "已完成输出" #: build/templates/build/build_base.html:190 -#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:845 -#: order/models.py:1566 order/models.py:1681 order/models.py:1840 +#: build/templates/build/detail.html:101 order/api.py:1384 order/models.py:854 +#: order/models.py:1575 order/models.py:1690 order/models.py:1849 #: order/templates/order/sales_order_base.html:9 #: order/templates/order/sales_order_base.html:28 #: report/templates/report/inventree_build_order_report.html:135 @@ -1853,7 +1929,7 @@ msgstr "已完成输出" #: templates/js/translated/pricing.js:929 #: templates/js/translated/sales_order.js:805 #: templates/js/translated/sales_order.js:1028 -#: templates/js/translated/stock.js:2924 +#: templates/js/translated/stock.js:3005 msgid "Sales Order" msgstr "销售订单" @@ -1865,7 +1941,7 @@ msgid "Issued By" msgstr "发布者" #: build/templates/build/build_base.html:211 -#: build/templates/build/detail.html:94 templates/js/translated/build.js:2156 +#: build/templates/build/detail.html:94 templates/js/translated/build.js:2331 msgid "Priority" msgstr "优先级" @@ -1897,8 +1973,8 @@ msgstr "库存来源" msgid "Stock can be taken from any available location." msgstr "库存可以从任何可用的地点获得。" -#: build/templates/build/detail.html:49 order/models.py:1448 -#: templates/js/translated/purchase_order.js:2189 +#: build/templates/build/detail.html:49 order/models.py:1457 +#: templates/js/translated/purchase_order.js:2260 msgid "Destination" msgstr "目的地" @@ -1912,11 +1988,11 @@ msgstr "已分配的部件" #: build/templates/build/detail.html:80 stock/admin.py:162 #: stock/templates/stock/item_base.html:162 -#: templates/js/translated/build.js:1380 +#: templates/js/translated/build.js:1555 #: templates/js/translated/model_renderers.js:241 -#: templates/js/translated/purchase_order.js:1274 -#: templates/js/translated/stock.js:1133 templates/js/translated/stock.js:2190 -#: templates/js/translated/stock.js:3127 +#: templates/js/translated/purchase_order.js:1326 +#: templates/js/translated/stock.js:1135 templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:2271 templates/js/translated/stock.js:3208 #: templates/js/translated/table_filters.js:313 #: templates/js/translated/table_filters.js:404 msgid "Batch" @@ -1926,7 +2002,7 @@ msgstr "批量" #: order/templates/order/order_base.html:173 #: order/templates/order/return_order_base.html:151 #: order/templates/order/sales_order_base.html:190 -#: templates/js/translated/build.js:2199 +#: templates/js/translated/build.js:2374 msgid "Created" msgstr "已创建" @@ -1944,13 +2020,15 @@ msgstr "已完成" msgid "Build not complete" msgstr "生产未完成" -#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:17 +#: build/templates/build/detail.html:164 build/templates/build/sidebar.html:21 msgid "Child Build Orders" msgstr "子生产订单" #: build/templates/build/detail.html:177 -msgid "Allocate Stock to Build" -msgstr "为生产分配库存" +#, fuzzy +#| msgid "Delete parameters" +msgid "Build Order Line Items" +msgstr "删除参数" #: build/templates/build/detail.html:181 #, fuzzy @@ -1976,7 +2054,7 @@ msgstr "自动分配" msgid "Manually allocate stock to build" msgstr "手动分配存货进行生成" -#: build/templates/build/detail.html:188 build/templates/build/sidebar.html:8 +#: build/templates/build/detail.html:188 msgid "Allocate Stock" msgstr "分配库存" @@ -2007,17 +2085,17 @@ msgstr "创建新构建输出" msgid "New Build Output" msgstr "新建构建输出" -#: build/templates/build/detail.html:237 build/templates/build/sidebar.html:15 +#: build/templates/build/detail.html:249 build/templates/build/sidebar.html:19 #, fuzzy #| msgid "Minimum Stock" msgid "Consumed Stock" msgstr "最低库存" -#: build/templates/build/detail.html:249 +#: build/templates/build/detail.html:261 msgid "Completed Build Outputs" msgstr "已完成构建输出" -#: build/templates/build/detail.html:261 build/templates/build/sidebar.html:19 +#: build/templates/build/detail.html:273 build/templates/build/sidebar.html:23 #: company/templates/company/detail.html:229 #: company/templates/company/manufacturer_part.html:141 #: company/templates/company/manufacturer_part_sidebar.html:9 @@ -2033,15 +2111,15 @@ msgstr "已完成构建输出" msgid "Attachments" msgstr "附件" -#: build/templates/build/detail.html:276 +#: build/templates/build/detail.html:288 msgid "Build Notes" msgstr "生产备注" -#: build/templates/build/detail.html:426 +#: build/templates/build/detail.html:442 msgid "Allocation Complete" msgstr "分配完成" -#: build/templates/build/detail.html:427 +#: build/templates/build/detail.html:443 #, fuzzy #| msgid "Required stock has not been fully allocated" msgid "All lines have been fully allocated" @@ -2055,6 +2133,16 @@ msgstr "新建生产订单" msgid "Build Order Details" msgstr "生产订单详情" +#: build/templates/build/sidebar.html:8 order/serializers.py:83 +#: order/templates/order/po_sidebar.html:5 +#: order/templates/order/return_order_detail.html:18 +#: order/templates/order/so_sidebar.html:5 +#: report/templates/report/inventree_purchase_order_report.html:22 +#: report/templates/report/inventree_return_order_report.html:19 +#: report/templates/report/inventree_sales_order_report.html:22 +msgid "Line Items" +msgstr "" + #: build/templates/build/sidebar.html:10 msgid "Incomplete Outputs" msgstr "未完成输出" @@ -2280,8 +2368,8 @@ msgstr "" #: common/models.py:1282 common/models.py:1338 common/models.py:1351 #: common/models.py:1359 common/models.py:1368 common/models.py:1377 -#: common/models.py:1601 common/models.py:1623 common/models.py:1738 -#: common/models.py:2111 +#: common/models.py:1607 common/models.py:1629 common/models.py:1744 +#: common/models.py:2117 msgid "days" msgstr "天" @@ -2438,72 +2526,80 @@ msgid "Enable revision field for Part" msgstr "启用内部商品价格" #: common/models.py:1412 +msgid "Assembly Revision Only" +msgstr "" + +#: common/models.py:1413 +msgid "Only allow revisions for assembly parts" +msgstr "" + +#: common/models.py:1418 #, fuzzy #| msgid "Removed from assembly" msgid "Allow Deletion from Assembly" msgstr "已从组装中删除" -#: common/models.py:1413 +#: common/models.py:1419 msgid "Allow deletion of parts which are used in an assembly" msgstr "" -#: common/models.py:1418 +#: common/models.py:1424 msgid "IPN Regex" msgstr "" -#: common/models.py:1419 +#: common/models.py:1425 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:1422 +#: common/models.py:1428 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:1423 +#: common/models.py:1429 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:1428 +#: common/models.py:1434 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:1429 +#: common/models.py:1435 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:1434 +#: common/models.py:1440 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:1435 +#: common/models.py:1441 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:1440 +#: common/models.py:1446 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:1441 +#: common/models.py:1447 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:1446 +#: common/models.py:1452 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:1447 +#: common/models.py:1453 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:1452 +#: common/models.py:1458 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:1453 +#: common/models.py:1459 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1458 part/admin.py:108 part/models.py:3835 +#: common/models.py:1464 part/admin.py:108 part/models.py:3907 #: report/models.py:294 report/models.py:361 report/serializers.py:90 #: report/serializers.py:131 stock/serializers.py:232 #: templates/js/translated/table_filters.js:139 @@ -2511,1333 +2607,1333 @@ msgstr "" msgid "Template" msgstr "模板" -#: common/models.py:1459 +#: common/models.py:1465 msgid "Parts are templates by default" msgstr "" -#: common/models.py:1464 part/admin.py:91 part/admin.py:425 part/models.py:1056 +#: common/models.py:1470 part/admin.py:91 part/admin.py:425 part/models.py:1122 #: templates/js/translated/bom.js:1639 #: templates/js/translated/table_filters.js:330 #: templates/js/translated/table_filters.js:726 msgid "Assembly" msgstr "组装" -#: common/models.py:1465 +#: common/models.py:1471 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1470 part/admin.py:95 part/models.py:1062 +#: common/models.py:1476 part/admin.py:95 part/models.py:1128 #: templates/js/translated/table_filters.js:734 msgid "Component" msgstr "组件" -#: common/models.py:1471 +#: common/models.py:1477 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1476 part/admin.py:100 part/models.py:1074 +#: common/models.py:1482 part/admin.py:100 part/models.py:1140 msgid "Purchaseable" msgstr "可购买" -#: common/models.py:1477 +#: common/models.py:1483 msgid "Parts are purchaseable by default" msgstr "商品默认可购买" -#: common/models.py:1482 part/admin.py:104 part/models.py:1080 +#: common/models.py:1488 part/admin.py:104 part/models.py:1146 #: templates/js/translated/table_filters.js:760 msgid "Salable" msgstr "可销售" -#: common/models.py:1483 +#: common/models.py:1489 msgid "Parts are salable by default" msgstr "商品默认可销售" -#: common/models.py:1489 +#: common/models.py:1495 msgid "Parts are trackable by default" msgstr "商品默认可跟踪" -#: common/models.py:1494 part/admin.py:117 part/models.py:1096 +#: common/models.py:1500 part/admin.py:117 part/models.py:1162 #: part/templates/part/part_base.html:154 #: templates/js/translated/table_filters.js:143 #: templates/js/translated/table_filters.js:780 msgid "Virtual" msgstr "虚拟" -#: common/models.py:1495 +#: common/models.py:1501 msgid "Parts are virtual by default" msgstr "商品默认是虚拟的" -#: common/models.py:1500 +#: common/models.py:1506 msgid "Show Import in Views" msgstr "视图中显示导入" -#: common/models.py:1501 +#: common/models.py:1507 msgid "Display the import wizard in some part views" msgstr "在一些商品视图中显示导入向导" -#: common/models.py:1506 +#: common/models.py:1512 msgid "Show related parts" msgstr "显示相关商品" -#: common/models.py:1507 +#: common/models.py:1513 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1512 +#: common/models.py:1518 msgid "Initial Stock Data" msgstr "" -#: common/models.py:1513 +#: common/models.py:1519 msgid "Allow creation of initial stock when adding a new part" msgstr "" -#: common/models.py:1518 templates/js/translated/part.js:107 +#: common/models.py:1524 templates/js/translated/part.js:107 msgid "Initial Supplier Data" msgstr "" -#: common/models.py:1520 +#: common/models.py:1526 msgid "Allow creation of initial supplier data when adding a new part" msgstr "" -#: common/models.py:1526 +#: common/models.py:1532 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1527 +#: common/models.py:1533 msgid "Format to display the part name" msgstr "" -#: common/models.py:1533 +#: common/models.py:1539 msgid "Part Category Default Icon" msgstr "" -#: common/models.py:1534 +#: common/models.py:1540 msgid "Part category default icon (empty means no icon)" msgstr "" -#: common/models.py:1538 +#: common/models.py:1544 #, fuzzy #| msgid "Parameter units" msgid "Enforce Parameter Units" msgstr "参数单位" -#: common/models.py:1540 +#: common/models.py:1546 msgid "If units are provided, parameter values must match the specified units" msgstr "" -#: common/models.py:1546 +#: common/models.py:1552 msgid "Minimum Pricing Decimal Places" msgstr "" -#: common/models.py:1548 +#: common/models.py:1554 msgid "Minimum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1559 +#: common/models.py:1565 msgid "Maximum Pricing Decimal Places" msgstr "" -#: common/models.py:1561 +#: common/models.py:1567 msgid "Maximum number of decimal places to display when rendering pricing data" msgstr "" -#: common/models.py:1572 +#: common/models.py:1578 msgid "Use Supplier Pricing" msgstr "" -#: common/models.py:1574 +#: common/models.py:1580 msgid "Include supplier price breaks in overall pricing calculations" msgstr "" -#: common/models.py:1580 +#: common/models.py:1586 msgid "Purchase History Override" msgstr "" -#: common/models.py:1582 +#: common/models.py:1588 msgid "Historical purchase order pricing overrides supplier price breaks" msgstr "" -#: common/models.py:1588 +#: common/models.py:1594 msgid "Use Stock Item Pricing" msgstr "" -#: common/models.py:1590 +#: common/models.py:1596 msgid "Use pricing from manually entered stock data for pricing calculations" msgstr "" -#: common/models.py:1596 +#: common/models.py:1602 msgid "Stock Item Pricing Age" msgstr "" -#: common/models.py:1598 +#: common/models.py:1604 msgid "Exclude stock items older than this number of days from pricing calculations" msgstr "" -#: common/models.py:1605 +#: common/models.py:1611 msgid "Use Variant Pricing" msgstr "" -#: common/models.py:1606 +#: common/models.py:1612 msgid "Include variant pricing in overall pricing calculations" msgstr "" -#: common/models.py:1611 +#: common/models.py:1617 msgid "Active Variants Only" msgstr "" -#: common/models.py:1613 +#: common/models.py:1619 msgid "Only use active variant parts for calculating variant pricing" msgstr "" -#: common/models.py:1619 +#: common/models.py:1625 msgid "Pricing Rebuild Interval" msgstr "" -#: common/models.py:1621 +#: common/models.py:1627 msgid "Number of days before part pricing is automatically updated" msgstr "" -#: common/models.py:1628 +#: common/models.py:1634 msgid "Internal Prices" msgstr "内部价格" -#: common/models.py:1629 +#: common/models.py:1635 msgid "Enable internal prices for parts" msgstr "启用内部商品价格" -#: common/models.py:1634 +#: common/models.py:1640 msgid "Internal Price Override" msgstr "" -#: common/models.py:1636 +#: common/models.py:1642 msgid "If available, internal prices override price range calculations" msgstr "" -#: common/models.py:1642 +#: common/models.py:1648 msgid "Enable label printing" msgstr "" -#: common/models.py:1643 +#: common/models.py:1649 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1648 +#: common/models.py:1654 msgid "Label Image DPI" msgstr "" -#: common/models.py:1650 +#: common/models.py:1656 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1656 +#: common/models.py:1662 msgid "Enable Reports" msgstr "" -#: common/models.py:1657 +#: common/models.py:1663 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1662 templates/stats.html:25 +#: common/models.py:1668 templates/stats.html:25 msgid "Debug Mode" msgstr "调试模式" -#: common/models.py:1663 +#: common/models.py:1669 msgid "Generate reports in debug mode (HTML output)" msgstr "在调试模式生成报告(HTML输出)" -#: common/models.py:1668 +#: common/models.py:1674 #, fuzzy #| msgid "No Reports Found" msgid "Log Report Errors" msgstr "没有找到报表" -#: common/models.py:1669 +#: common/models.py:1675 msgid "Log errors which occur when generating reports" msgstr "" -#: common/models.py:1674 plugin/builtin/labels/label_sheet.py:28 +#: common/models.py:1680 plugin/builtin/labels/label_sheet.py:29 #: report/models.py:302 msgid "Page Size" msgstr "页面大小" -#: common/models.py:1675 +#: common/models.py:1681 msgid "Default page size for PDF reports" msgstr "PDF 报表默认页面大小" -#: common/models.py:1680 +#: common/models.py:1686 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1681 +#: common/models.py:1687 msgid "Enable generation of test reports" msgstr "启用生成测试报表" -#: common/models.py:1686 +#: common/models.py:1692 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1688 +#: common/models.py:1694 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1694 +#: common/models.py:1700 msgid "Globally Unique Serials" msgstr "" -#: common/models.py:1695 +#: common/models.py:1701 msgid "Serial numbers for stock items must be globally unique" msgstr "" -#: common/models.py:1700 +#: common/models.py:1706 msgid "Autofill Serial Numbers" msgstr "" -#: common/models.py:1701 +#: common/models.py:1707 msgid "Autofill serial numbers in forms" msgstr "" -#: common/models.py:1706 +#: common/models.py:1712 msgid "Delete Depleted Stock" msgstr "" -#: common/models.py:1708 +#: common/models.py:1714 msgid "Determines default behavior when a stock item is depleted" msgstr "" -#: common/models.py:1714 +#: common/models.py:1720 msgid "Batch Code Template" msgstr "" -#: common/models.py:1716 +#: common/models.py:1722 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1721 +#: common/models.py:1727 msgid "Stock Expiry" msgstr "库存到期" -#: common/models.py:1722 +#: common/models.py:1728 msgid "Enable stock expiry functionality" msgstr "启用库存到期功能" -#: common/models.py:1727 +#: common/models.py:1733 msgid "Sell Expired Stock" msgstr "销售过期库存" -#: common/models.py:1728 +#: common/models.py:1734 msgid "Allow sale of expired stock" msgstr "允许销售过期库存" -#: common/models.py:1733 +#: common/models.py:1739 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1735 +#: common/models.py:1741 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1742 +#: common/models.py:1748 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1743 +#: common/models.py:1749 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1748 +#: common/models.py:1754 msgid "Stock Ownership Control" msgstr "库存所有权控制" -#: common/models.py:1749 +#: common/models.py:1755 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1754 +#: common/models.py:1760 msgid "Stock Location Default Icon" msgstr "" -#: common/models.py:1755 +#: common/models.py:1761 msgid "Stock location default icon (empty means no icon)" msgstr "" -#: common/models.py:1759 +#: common/models.py:1765 #, fuzzy #| msgid "Select Stock Items" msgid "Show Installed Stock Items" msgstr "选择库存项" -#: common/models.py:1760 +#: common/models.py:1766 msgid "Display installed stock items in stock tables" msgstr "" -#: common/models.py:1765 +#: common/models.py:1771 msgid "Check BOM when installing items" msgstr "" -#: common/models.py:1767 +#: common/models.py:1773 msgid "Installed stock items must exist in the BOM for the parent part" msgstr "" -#: common/models.py:1773 +#: common/models.py:1779 msgid "Allow Out of Stock Transfer" msgstr "" -#: common/models.py:1775 +#: common/models.py:1781 msgid "Allow stock items which are not in stock to be transferred between stock locations" msgstr "" -#: common/models.py:1781 +#: common/models.py:1787 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1783 +#: common/models.py:1789 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1789 common/models.py:1837 common/models.py:1859 -#: common/models.py:1895 +#: common/models.py:1795 common/models.py:1843 common/models.py:1865 +#: common/models.py:1901 #, fuzzy #| msgid "Responsible" msgid "Require Responsible Owner" msgstr "责任人" -#: common/models.py:1790 common/models.py:1838 common/models.py:1860 -#: common/models.py:1896 +#: common/models.py:1796 common/models.py:1844 common/models.py:1866 +#: common/models.py:1902 msgid "A responsible owner must be assigned to each order" msgstr "" -#: common/models.py:1795 +#: common/models.py:1801 #, fuzzy #| msgid "Build to allocate parts" msgid "Require Active Part" msgstr "生产以分配部件" -#: common/models.py:1796 +#: common/models.py:1802 #, fuzzy #| msgid "Print build order report" msgid "Prevent build order creation for inactive parts" msgstr "打印构建订单报告" -#: common/models.py:1801 +#: common/models.py:1807 #, fuzzy #| msgid "Build to allocate parts" msgid "Require Locked Part" msgstr "生产以分配部件" -#: common/models.py:1802 +#: common/models.py:1808 #, fuzzy #| msgid "Print build order report" msgid "Prevent build order creation for unlocked parts" msgstr "打印构建订单报告" -#: common/models.py:1807 +#: common/models.py:1813 msgid "Require Valid BOM" msgstr "" -#: common/models.py:1809 +#: common/models.py:1815 msgid "Prevent build order creation unless BOM has been validated" msgstr "" -#: common/models.py:1815 +#: common/models.py:1821 msgid "Block Until Tests Pass" msgstr "" -#: common/models.py:1817 +#: common/models.py:1823 msgid "Prevent build outputs from being completed until all required tests pass" msgstr "" -#: common/models.py:1823 +#: common/models.py:1829 #, fuzzy #| msgid "Sales Orders" msgid "Enable Return Orders" msgstr "销售订单" -#: common/models.py:1824 +#: common/models.py:1830 msgid "Enable return order functionality in the user interface" msgstr "" -#: common/models.py:1829 +#: common/models.py:1835 #, fuzzy #| msgid "Build Order Reference" msgid "Return Order Reference Pattern" msgstr "相关生产订单" -#: common/models.py:1831 +#: common/models.py:1837 msgid "Required pattern for generating Return Order reference field" msgstr "" -#: common/models.py:1843 +#: common/models.py:1849 #, fuzzy #| msgid "Complete Build Order" msgid "Edit Completed Return Orders" msgstr "生产订单完成" -#: common/models.py:1845 +#: common/models.py:1851 msgid "Allow editing of return orders after they have been completed" msgstr "" -#: common/models.py:1851 +#: common/models.py:1857 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1853 +#: common/models.py:1859 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1865 +#: common/models.py:1871 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1866 +#: common/models.py:1872 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1871 +#: common/models.py:1877 msgid "Edit Completed Sales Orders" msgstr "" -#: common/models.py:1873 +#: common/models.py:1879 msgid "Allow editing of sales orders after they have been shipped or completed" msgstr "" -#: common/models.py:1879 +#: common/models.py:1885 #, fuzzy #| msgid "Build Order is incomplete" msgid "Mark Shipped Orders as Complete" msgstr "生产订单未完成" -#: common/models.py:1881 +#: common/models.py:1887 msgid "Sales orders marked as shipped will automatically be completed, bypassing the \"shipped\" status" msgstr "" -#: common/models.py:1887 +#: common/models.py:1893 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1889 +#: common/models.py:1895 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1901 +#: common/models.py:1907 msgid "Edit Completed Purchase Orders" msgstr "" -#: common/models.py:1903 +#: common/models.py:1909 msgid "Allow editing of purchase orders after they have been shipped or completed" msgstr "" -#: common/models.py:1909 +#: common/models.py:1915 #, fuzzy #| msgid "Create Purchase Order" msgid "Auto Complete Purchase Orders" msgstr "创建采购订单" -#: common/models.py:1911 +#: common/models.py:1917 msgid "Automatically mark purchase orders as complete when all line items are received" msgstr "" -#: common/models.py:1918 +#: common/models.py:1924 msgid "Enable password forgot" msgstr "" -#: common/models.py:1919 +#: common/models.py:1925 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1924 +#: common/models.py:1930 msgid "Enable registration" msgstr "" -#: common/models.py:1925 +#: common/models.py:1931 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1930 +#: common/models.py:1936 msgid "Enable SSO" msgstr "" -#: common/models.py:1931 +#: common/models.py:1937 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1936 +#: common/models.py:1942 msgid "Enable SSO registration" msgstr "" -#: common/models.py:1938 +#: common/models.py:1944 msgid "Enable self-registration via SSO for users on the login pages" msgstr "" -#: common/models.py:1944 +#: common/models.py:1950 msgid "Enable SSO group sync" msgstr "" -#: common/models.py:1946 +#: common/models.py:1952 msgid "Enable synchronizing InvenTree groups with groups provided by the IdP" msgstr "" -#: common/models.py:1952 +#: common/models.py:1958 msgid "SSO group key" msgstr "" -#: common/models.py:1954 +#: common/models.py:1960 msgid "The name of the groups claim attribute provided by the IdP" msgstr "" -#: common/models.py:1960 +#: common/models.py:1966 msgid "SSO group map" msgstr "" -#: common/models.py:1962 +#: common/models.py:1968 msgid "A mapping from SSO groups to local InvenTree groups. If the local group does not exist, it will be created." msgstr "" -#: common/models.py:1968 +#: common/models.py:1974 msgid "Remove groups outside of SSO" msgstr "" -#: common/models.py:1970 +#: common/models.py:1976 msgid "Whether groups assigned to the user should be removed if they are not backend by the IdP. Disabling this setting might cause security issues" msgstr "" -#: common/models.py:1976 +#: common/models.py:1982 msgid "Email required" msgstr "" -#: common/models.py:1977 +#: common/models.py:1983 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1982 +#: common/models.py:1988 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1984 +#: common/models.py:1990 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1990 +#: common/models.py:1996 msgid "Mail twice" msgstr "" -#: common/models.py:1991 +#: common/models.py:1997 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1996 +#: common/models.py:2002 msgid "Password twice" msgstr "" -#: common/models.py:1997 +#: common/models.py:2003 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:2002 +#: common/models.py:2008 msgid "Allowed domains" msgstr "" -#: common/models.py:2004 +#: common/models.py:2010 msgid "Restrict signup to certain domains (comma-separated, starting with @)" msgstr "" -#: common/models.py:2010 +#: common/models.py:2016 msgid "Group on signup" msgstr "" -#: common/models.py:2012 +#: common/models.py:2018 msgid "Group to which new users are assigned on registration. If SSO group sync is enabled, this group is only set if no group can be assigned from the IdP." msgstr "" -#: common/models.py:2018 +#: common/models.py:2024 msgid "Enforce MFA" msgstr "" -#: common/models.py:2019 +#: common/models.py:2025 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:2024 +#: common/models.py:2030 msgid "Check plugins on startup" msgstr "" -#: common/models.py:2026 +#: common/models.py:2032 msgid "Check that all plugins are installed on startup - enable in container environments" msgstr "" -#: common/models.py:2034 +#: common/models.py:2040 msgid "Check for plugin updates" msgstr "" -#: common/models.py:2035 +#: common/models.py:2041 msgid "Enable periodic checks for updates to installed plugins" msgstr "" -#: common/models.py:2041 +#: common/models.py:2047 msgid "Enable URL integration" msgstr "" -#: common/models.py:2042 +#: common/models.py:2048 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:2048 +#: common/models.py:2054 msgid "Enable navigation integration" msgstr "" -#: common/models.py:2049 +#: common/models.py:2055 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:2055 +#: common/models.py:2061 msgid "Enable app integration" msgstr "" -#: common/models.py:2056 +#: common/models.py:2062 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:2062 +#: common/models.py:2068 msgid "Enable schedule integration" msgstr "" -#: common/models.py:2063 +#: common/models.py:2069 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:2069 +#: common/models.py:2075 msgid "Enable event integration" msgstr "" -#: common/models.py:2070 +#: common/models.py:2076 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:2076 +#: common/models.py:2082 #, fuzzy #| msgid "Sales Orders" msgid "Enable project codes" msgstr "销售订单" -#: common/models.py:2077 +#: common/models.py:2083 msgid "Enable project codes for tracking projects" msgstr "" -#: common/models.py:2082 +#: common/models.py:2088 msgid "Stocktake Functionality" msgstr "" -#: common/models.py:2084 +#: common/models.py:2090 msgid "Enable stocktake functionality for recording stock levels and calculating stock value" msgstr "" -#: common/models.py:2090 +#: common/models.py:2096 #, fuzzy #| msgid "Exclude Location" msgid "Exclude External Locations" msgstr "排除地点" -#: common/models.py:2092 +#: common/models.py:2098 #, fuzzy #| msgid "Exclude stock items from this selected location" msgid "Exclude stock items in external locations from stocktake calculations" msgstr "从该选定的仓储地点排除库存项" -#: common/models.py:2098 +#: common/models.py:2104 msgid "Automatic Stocktake Period" msgstr "" -#: common/models.py:2100 +#: common/models.py:2106 msgid "Number of days between automatic stocktake recording (set to zero to disable)" msgstr "" -#: common/models.py:2106 +#: common/models.py:2112 msgid "Report Deletion Interval" msgstr "" -#: common/models.py:2108 +#: common/models.py:2114 msgid "Stocktake reports will be deleted after specified number of days" msgstr "" -#: common/models.py:2115 +#: common/models.py:2121 msgid "Display Users full names" msgstr "" -#: common/models.py:2116 +#: common/models.py:2122 msgid "Display Users full names instead of usernames" msgstr "" -#: common/models.py:2121 +#: common/models.py:2127 msgid "Enable Test Station Data" msgstr "" -#: common/models.py:2122 +#: common/models.py:2128 #, fuzzy #| msgid "Enable generation of test reports" msgid "Enable test station data collection for test results" msgstr "启用生成测试报表" -#: common/models.py:2134 common/models.py:2514 +#: common/models.py:2140 common/models.py:2520 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:2177 +#: common/models.py:2183 #, fuzzy #| msgid "Build to allocate parts" msgid "Hide inactive parts" msgstr "生产以分配部件" -#: common/models.py:2179 +#: common/models.py:2185 msgid "Hide inactive parts in results displayed on the homepage" msgstr "" -#: common/models.py:2185 +#: common/models.py:2191 msgid "Show subscribed parts" msgstr "" -#: common/models.py:2186 +#: common/models.py:2192 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:2191 +#: common/models.py:2197 msgid "Show subscribed categories" msgstr "" -#: common/models.py:2192 +#: common/models.py:2198 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:2197 +#: common/models.py:2203 msgid "Show latest parts" msgstr "显示最近商品" -#: common/models.py:2198 +#: common/models.py:2204 msgid "Show latest parts on the homepage" msgstr "在主页上显示最近商品" -#: common/models.py:2203 +#: common/models.py:2209 msgid "Show invalid BOMs" msgstr "" -#: common/models.py:2204 +#: common/models.py:2210 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:2209 +#: common/models.py:2215 msgid "Show recent stock changes" msgstr "" -#: common/models.py:2210 +#: common/models.py:2216 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:2215 +#: common/models.py:2221 msgid "Show low stock" msgstr "" -#: common/models.py:2216 +#: common/models.py:2222 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:2221 +#: common/models.py:2227 msgid "Show depleted stock" msgstr "" -#: common/models.py:2222 +#: common/models.py:2228 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:2227 +#: common/models.py:2233 msgid "Show needed stock" msgstr "" -#: common/models.py:2228 +#: common/models.py:2234 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:2233 +#: common/models.py:2239 msgid "Show expired stock" msgstr "" -#: common/models.py:2234 +#: common/models.py:2240 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:2239 +#: common/models.py:2245 msgid "Show stale stock" msgstr "" -#: common/models.py:2240 +#: common/models.py:2246 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:2245 +#: common/models.py:2251 msgid "Show pending builds" msgstr "" -#: common/models.py:2246 +#: common/models.py:2252 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:2251 +#: common/models.py:2257 msgid "Show overdue builds" msgstr "显示逾期生产" -#: common/models.py:2252 +#: common/models.py:2258 msgid "Show overdue builds on the homepage" msgstr "在主页上显示逾期的生产" -#: common/models.py:2257 +#: common/models.py:2263 msgid "Show outstanding POs" msgstr "" -#: common/models.py:2258 +#: common/models.py:2264 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:2263 +#: common/models.py:2269 msgid "Show overdue POs" msgstr "" -#: common/models.py:2264 +#: common/models.py:2270 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:2269 +#: common/models.py:2275 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:2270 +#: common/models.py:2276 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:2275 +#: common/models.py:2281 msgid "Show overdue SOs" msgstr "" -#: common/models.py:2276 +#: common/models.py:2282 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:2281 +#: common/models.py:2287 msgid "Show pending SO shipments" msgstr "" -#: common/models.py:2282 +#: common/models.py:2288 #, fuzzy #| msgid "Show latest parts on the homepage" msgid "Show pending SO shipments on the homepage" msgstr "在主页上显示最近商品" -#: common/models.py:2287 +#: common/models.py:2293 msgid "Show News" msgstr "" -#: common/models.py:2288 +#: common/models.py:2294 msgid "Show news on the homepage" msgstr "" -#: common/models.py:2293 +#: common/models.py:2299 msgid "Inline label display" msgstr "内嵌标签显示" -#: common/models.py:2295 +#: common/models.py:2301 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "在浏览器中显示 PDF 标签,而不是以文件形式下载" -#: common/models.py:2301 +#: common/models.py:2307 msgid "Default label printer" msgstr "" -#: common/models.py:2303 +#: common/models.py:2309 msgid "Configure which label printer should be selected by default" msgstr "" -#: common/models.py:2309 +#: common/models.py:2315 msgid "Inline report display" msgstr "" -#: common/models.py:2311 +#: common/models.py:2317 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "在浏览器中显示 PDF 报告,而不是以文件形式下载" -#: common/models.py:2317 +#: common/models.py:2323 msgid "Search Parts" msgstr "" -#: common/models.py:2318 +#: common/models.py:2324 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:2323 +#: common/models.py:2329 msgid "Search Supplier Parts" msgstr "" -#: common/models.py:2324 +#: common/models.py:2330 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:2329 +#: common/models.py:2335 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:2330 +#: common/models.py:2336 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:2335 +#: common/models.py:2341 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:2336 +#: common/models.py:2342 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:2341 +#: common/models.py:2347 msgid "Search Categories" msgstr "" -#: common/models.py:2342 +#: common/models.py:2348 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:2347 +#: common/models.py:2353 msgid "Search Stock" msgstr "" -#: common/models.py:2348 +#: common/models.py:2354 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:2353 +#: common/models.py:2359 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:2355 +#: common/models.py:2361 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:2361 +#: common/models.py:2367 msgid "Search Locations" msgstr "" -#: common/models.py:2362 +#: common/models.py:2368 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:2367 +#: common/models.py:2373 msgid "Search Companies" msgstr "" -#: common/models.py:2368 +#: common/models.py:2374 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:2373 +#: common/models.py:2379 msgid "Search Build Orders" msgstr "" -#: common/models.py:2374 +#: common/models.py:2380 msgid "Display build orders in search preview window" msgstr "" -#: common/models.py:2379 +#: common/models.py:2385 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:2380 +#: common/models.py:2386 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:2385 +#: common/models.py:2391 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:2387 +#: common/models.py:2393 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:2393 +#: common/models.py:2399 msgid "Search Sales Orders" msgstr "" -#: common/models.py:2394 +#: common/models.py:2400 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:2399 +#: common/models.py:2405 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:2401 +#: common/models.py:2407 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:2407 +#: common/models.py:2413 #, fuzzy #| msgid "Purchase Orders" msgid "Search Return Orders" msgstr "采购订单" -#: common/models.py:2408 +#: common/models.py:2414 msgid "Display return orders in search preview window" msgstr "" -#: common/models.py:2413 +#: common/models.py:2419 msgid "Exclude Inactive Return Orders" msgstr "" -#: common/models.py:2415 +#: common/models.py:2421 msgid "Exclude inactive return orders from search preview window" msgstr "" -#: common/models.py:2421 +#: common/models.py:2427 msgid "Search Preview Results" msgstr "搜索预览结果" -#: common/models.py:2423 +#: common/models.py:2429 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:2429 +#: common/models.py:2435 #, fuzzy #| msgid "Search" msgid "Regex Search" msgstr "搜索" -#: common/models.py:2430 +#: common/models.py:2436 msgid "Enable regular expressions in search queries" msgstr "" -#: common/models.py:2435 +#: common/models.py:2441 msgid "Whole Word Search" msgstr "" -#: common/models.py:2436 +#: common/models.py:2442 msgid "Search queries return results for whole word matches" msgstr "" -#: common/models.py:2441 +#: common/models.py:2447 msgid "Show Quantity in Forms" msgstr "在表格中显示数量" -#: common/models.py:2442 +#: common/models.py:2448 msgid "Display available part quantity in some forms" msgstr "在某些表格中显示可用的商品数量" -#: common/models.py:2447 +#: common/models.py:2453 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:2448 +#: common/models.py:2454 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:2453 +#: common/models.py:2459 msgid "Fixed Navbar" msgstr "" -#: common/models.py:2454 +#: common/models.py:2460 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:2459 +#: common/models.py:2465 msgid "Date Format" msgstr "" -#: common/models.py:2460 +#: common/models.py:2466 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:2473 part/templates/part/detail.html:41 +#: common/models.py:2479 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:2474 +#: common/models.py:2480 msgid "Display part scheduling information" msgstr "" -#: common/models.py:2479 part/templates/part/detail.html:62 +#: common/models.py:2485 part/templates/part/detail.html:62 msgid "Part Stocktake" msgstr "" -#: common/models.py:2481 +#: common/models.py:2487 msgid "Display part stocktake information (if stocktake functionality is enabled)" msgstr "" -#: common/models.py:2487 +#: common/models.py:2493 msgid "Table String Length" msgstr "" -#: common/models.py:2489 +#: common/models.py:2495 msgid "Maximum length limit for strings displayed in table views" msgstr "" -#: common/models.py:2495 +#: common/models.py:2501 msgid "Receive error reports" msgstr "" -#: common/models.py:2496 +#: common/models.py:2502 msgid "Receive notifications for system errors" msgstr "" -#: common/models.py:2501 +#: common/models.py:2507 msgid "Last used printing machines" msgstr "" -#: common/models.py:2502 +#: common/models.py:2508 msgid "Save the last used printing machines for a user" msgstr "" -#: common/models.py:2522 common/models.py:2523 common/models.py:2672 -#: common/models.py:2673 common/models.py:2918 common/models.py:2919 -#: common/models.py:3245 common/models.py:3246 importer/models.py:85 -#: part/models.py:3203 part/models.py:3290 part/models.py:3364 -#: part/models.py:3392 plugin/models.py:274 plugin/models.py:275 +#: common/models.py:2528 common/models.py:2529 common/models.py:2678 +#: common/models.py:2679 common/models.py:2924 common/models.py:2925 +#: common/models.py:3251 common/models.py:3252 importer/models.py:87 +#: part/models.py:3269 part/models.py:3356 part/models.py:3430 +#: part/models.py:3458 plugin/models.py:274 plugin/models.py:275 #: report/templates/report/inventree_test_report.html:105 -#: templates/js/translated/stock.js:3036 users/models.py:111 +#: templates/js/translated/stock.js:3117 users/models.py:111 msgid "User" msgstr "用户" -#: common/models.py:2545 +#: common/models.py:2551 msgid "Price break quantity" msgstr "" -#: common/models.py:2552 company/serializers.py:502 order/admin.py:42 -#: order/models.py:1346 order/models.py:2292 -#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1889 +#: common/models.py:2558 company/serializers.py:506 order/admin.py:42 +#: order/models.py:1355 order/models.py:2301 +#: templates/js/translated/company.js:1823 templates/js/translated/part.js:1891 #: templates/js/translated/pricing.js:621 #: templates/js/translated/return_order.js:740 msgid "Price" msgstr "价格" -#: common/models.py:2553 +#: common/models.py:2559 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2649 common/models.py:2834 +#: common/models.py:2655 common/models.py:2840 msgid "Endpoint" msgstr "" -#: common/models.py:2650 +#: common/models.py:2656 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2660 +#: common/models.py:2666 msgid "Name for this webhook" msgstr "" -#: common/models.py:2664 +#: common/models.py:2670 msgid "Is this webhook active" msgstr "" -#: common/models.py:2680 users/models.py:159 +#: common/models.py:2686 users/models.py:159 msgid "Token" msgstr "令牌" -#: common/models.py:2681 +#: common/models.py:2687 msgid "Token for access" msgstr "" -#: common/models.py:2689 +#: common/models.py:2695 msgid "Secret" msgstr "" -#: common/models.py:2690 +#: common/models.py:2696 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2798 +#: common/models.py:2804 msgid "Message ID" msgstr "" -#: common/models.py:2799 +#: common/models.py:2805 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2807 +#: common/models.py:2813 msgid "Host" msgstr "" -#: common/models.py:2808 +#: common/models.py:2814 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2816 +#: common/models.py:2822 msgid "Header" msgstr "" -#: common/models.py:2817 +#: common/models.py:2823 msgid "Header of this message" msgstr "" -#: common/models.py:2824 +#: common/models.py:2830 msgid "Body" msgstr "" -#: common/models.py:2825 +#: common/models.py:2831 msgid "Body of this message" msgstr "" -#: common/models.py:2835 +#: common/models.py:2841 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2840 +#: common/models.py:2846 msgid "Worked on" msgstr "" -#: common/models.py:2841 +#: common/models.py:2847 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2967 +#: common/models.py:2973 msgid "Id" msgstr "" -#: common/models.py:2969 templates/js/translated/company.js:965 +#: common/models.py:2975 templates/js/translated/company.js:965 #: templates/js/translated/news.js:44 msgid "Title" msgstr "" -#: common/models.py:2971 common/models.py:3229 company/models.py:149 +#: common/models.py:2977 common/models.py:3235 company/models.py:149 #: company/models.py:446 company/models.py:506 company/models.py:806 -#: order/models.py:303 order/models.py:1301 order/models.py:1733 -#: part/admin.py:55 part/models.py:959 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 +#: part/admin.py:55 part/models.py:1025 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_report.html:164 #: stock/admin.py:229 templates/js/translated/company.js:1319 #: templates/js/translated/company.js:1673 templates/js/translated/order.js:351 -#: templates/js/translated/part.js:2459 -#: templates/js/translated/purchase_order.js:2040 -#: templates/js/translated/purchase_order.js:2204 +#: templates/js/translated/part.js:2475 +#: templates/js/translated/purchase_order.js:2111 +#: templates/js/translated/purchase_order.js:2275 #: templates/js/translated/return_order.js:779 #: templates/js/translated/sales_order.js:1092 #: templates/js/translated/sales_order.js:2023 msgid "Link" msgstr "链接" -#: common/models.py:2973 templates/js/translated/news.js:60 +#: common/models.py:2979 templates/js/translated/news.js:60 msgid "Published" msgstr "" -#: common/models.py:2975 templates/InvenTree/settings/plugin_settings.html:32 +#: common/models.py:2981 templates/InvenTree/settings/plugin_settings.html:32 #: templates/js/translated/news.js:56 templates/js/translated/plugin.js:103 msgid "Author" msgstr "" -#: common/models.py:2977 templates/js/translated/news.js:52 +#: common/models.py:2983 templates/js/translated/news.js:52 msgid "Summary" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Read" msgstr "" -#: common/models.py:2980 +#: common/models.py:2986 msgid "Was this news item read?" msgstr "" -#: common/models.py:2997 company/models.py:159 part/models.py:969 +#: common/models.py:3003 company/models.py:159 part/models.py:1035 #: report/templates/report/inventree_bill_of_materials_report.html:126 #: report/templates/report/inventree_bill_of_materials_report.html:148 #: report/templates/report/inventree_return_order_report.html:35 @@ -3847,120 +3943,120 @@ msgstr "" msgid "Image" msgstr "图片" -#: common/models.py:2997 +#: common/models.py:3003 #, fuzzy #| msgid "Image" msgid "Image file" msgstr "图片" -#: common/models.py:3009 common/models.py:3213 +#: common/models.py:3015 common/models.py:3219 #, fuzzy #| msgid "Part Parameter Templates" msgid "Target model type for this image" msgstr "商品参数模板" -#: common/models.py:3013 +#: common/models.py:3019 #, fuzzy #| msgid "Part Parameter Templates" msgid "Target model ID for this image" msgstr "商品参数模板" -#: common/models.py:3035 +#: common/models.py:3041 #, fuzzy #| msgid "New Customer" msgid "Custom Unit" msgstr "新建客户" -#: common/models.py:3056 +#: common/models.py:3062 #, fuzzy #| msgid "Key string must be unique" msgid "Unit symbol must be unique" msgstr "关键字必须是唯一的" -#: common/models.py:3071 +#: common/models.py:3077 #, fuzzy #| msgid "Must be a valid number" msgid "Unit name must be a valid identifier" msgstr "必须是有效数字" -#: common/models.py:3090 +#: common/models.py:3096 #, fuzzy #| msgid "Part name" msgid "Unit name" msgstr "商品名称" -#: common/models.py:3097 templates/InvenTree/settings/settings_staff_js.html:75 +#: common/models.py:3103 templates/InvenTree/settings/settings_staff_js.html:75 msgid "Symbol" msgstr "" -#: common/models.py:3098 +#: common/models.py:3104 #, fuzzy #| msgid "Optional Items" msgid "Optional unit symbol" msgstr "可选项目" -#: common/models.py:3104 templates/InvenTree/settings/settings_staff_js.html:71 +#: common/models.py:3110 templates/InvenTree/settings/settings_staff_js.html:71 #, fuzzy #| msgid "Destination" msgid "Definition" msgstr "目的地" -#: common/models.py:3105 +#: common/models.py:3111 msgid "Unit definition" msgstr "" -#: common/models.py:3163 common/models.py:3220 stock/models.py:2471 +#: common/models.py:3169 common/models.py:3226 stock/models.py:2473 #: templates/js/translated/attachment.js:119 #: templates/js/translated/attachment.js:345 msgid "Attachment" msgstr "附件" -#: common/models.py:3175 +#: common/models.py:3181 msgid "Missing file" msgstr "缺少文件" -#: common/models.py:3176 +#: common/models.py:3182 msgid "Missing external link" msgstr "缺少外部链接" -#: common/models.py:3221 +#: common/models.py:3227 msgid "Select file to attach" msgstr "选择附件" -#: common/models.py:3236 templates/js/translated/attachment.js:120 +#: common/models.py:3242 templates/js/translated/attachment.js:120 #: templates/js/translated/attachment.js:360 msgid "Comment" msgstr "注释" -#: common/models.py:3237 +#: common/models.py:3243 #, fuzzy #| msgid "Attachments" msgid "Attachment comment" msgstr "附件" -#: common/models.py:3253 +#: common/models.py:3259 #, fuzzy #| msgid "upload date" msgid "Upload date" msgstr "上传日期" -#: common/models.py:3254 +#: common/models.py:3260 #, fuzzy #| msgid "Select file to upload" msgid "Date the file was uploaded" msgstr "选择要上传的文件" -#: common/models.py:3258 +#: common/models.py:3264 #, fuzzy #| msgid "File Fields" msgid "File size" msgstr "文件字段" -#: common/models.py:3258 +#: common/models.py:3264 msgid "File size in bytes" msgstr "" -#: common/models.py:3296 common/serializers.py:557 +#: common/models.py:3302 common/serializers.py:557 msgid "Invalid model type specified for attachment" msgstr "" @@ -4406,8 +4502,8 @@ msgstr "描述 (可选)" msgid "Manufacturer Part" msgstr "制造商商品" -#: company/models.py:481 company/models.py:767 stock/models.py:767 -#: stock/serializers.py:442 stock/templates/stock/item_base.html:142 +#: company/models.py:481 company/models.py:767 stock/models.py:765 +#: stock/serializers.py:445 stock/templates/stock/item_base.html:142 #: templates/js/translated/bom.js:622 msgid "Base Part" msgstr "" @@ -4418,7 +4514,7 @@ msgstr "选择商品" #: company/models.py:492 company/templates/company/company_base.html:82 #: company/templates/company/manufacturer_part.html:90 -#: company/templates/company/supplier_part.html:145 part/serializers.py:543 +#: company/templates/company/supplier_part.html:145 part/serializers.py:545 #: stock/templates/stock/item_base.html:207 #: templates/js/translated/company.js:507 #: templates/js/translated/company.js:1118 @@ -4433,13 +4529,13 @@ msgid "Select manufacturer" msgstr "选择制造商" #: company/models.py:499 company/templates/company/manufacturer_part.html:101 -#: company/templates/company/supplier_part.html:153 order/serializers.py:518 -#: part/serializers.py:553 templates/js/translated/company.js:351 +#: company/templates/company/supplier_part.html:153 order/serializers.py:519 +#: part/serializers.py:555 templates/js/translated/company.js:351 #: templates/js/translated/company.js:1117 #: templates/js/translated/company.js:1312 -#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1804 -#: templates/js/translated/purchase_order.js:1851 -#: templates/js/translated/purchase_order.js:2053 +#: templates/js/translated/company.js:1630 templates/js/translated/part.js:1806 +#: templates/js/translated/purchase_order.js:1922 +#: templates/js/translated/purchase_order.js:2124 msgid "MPN" msgstr "" @@ -4462,9 +4558,9 @@ msgid "Parameter name" msgstr "参数名称" #: company/models.py:594 report/templates/report/inventree_test_report.html:104 -#: stock/models.py:2463 templates/js/translated/company.js:1166 -#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1496 -#: templates/js/translated/stock.js:1522 +#: stock/models.py:2465 templates/js/translated/company.js:1166 +#: templates/js/translated/company.js:1419 templates/js/translated/part.js:1498 +#: templates/js/translated/stock.js:1603 msgid "Value" msgstr "数值" @@ -4473,10 +4569,10 @@ msgid "Parameter value" msgstr "参数值" #: company/models.py:602 company/templates/company/supplier_part.html:168 -#: part/admin.py:57 part/models.py:1049 part/models.py:3667 -#: part/templates/part/part_base.html:284 -#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1515 -#: templates/js/translated/part.js:1619 templates/js/translated/part.js:2373 +#: part/admin.py:57 part/models.py:1115 part/models.py:3733 +#: part/templates/part/part_base.html:293 +#: templates/js/translated/company.js:1425 templates/js/translated/part.js:1517 +#: templates/js/translated/part.js:1621 templates/js/translated/part.js:2376 msgid "Units" msgstr "单位" @@ -4486,10 +4582,11 @@ msgstr "参数单位" #: company/models.py:655 company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 order/api.py:434 -#: stock/models.py:778 stock/templates/stock/item_base.html:233 +#: stock/models.py:776 stock/templates/stock/item_base.html:233 +#: templates/js/translated/build.js:1054 #: templates/js/translated/company.js:1600 #: templates/js/translated/purchase_order.js:752 -#: templates/js/translated/stock.js:2280 +#: templates/js/translated/stock.js:2361 msgid "Supplier Part" msgstr "供应商商品" @@ -4510,15 +4607,15 @@ msgstr "" #: company/models.py:777 company/templates/company/company_base.html:87 #: company/templates/company/supplier_part.html:129 order/models.py:486 #: order/templates/order/order_base.html:136 part/bom.py:272 part/bom.py:310 -#: part/serializers.py:527 plugin/builtin/suppliers/digikey.py:25 +#: part/serializers.py:529 plugin/builtin/suppliers/digikey.py:25 #: plugin/builtin/suppliers/lcsc.py:26 plugin/builtin/suppliers/mouser.py:24 #: plugin/builtin/suppliers/tme.py:26 stock/templates/stock/item_base.html:224 #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:350 #: templates/js/translated/company.js:511 -#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1772 +#: templates/js/translated/company.js:1584 templates/js/translated/part.js:1774 #: templates/js/translated/pricing.js:498 -#: templates/js/translated/purchase_order.js:1689 +#: templates/js/translated/purchase_order.js:1760 #: templates/js/translated/table_filters.js:809 msgid "Supplier" msgstr "供应商" @@ -4527,7 +4624,7 @@ msgstr "供应商" msgid "Select supplier" msgstr "选择供应商" -#: company/models.py:784 part/serializers.py:538 +#: company/models.py:784 part/serializers.py:540 msgid "Supplier stock keeping unit" msgstr "" @@ -4550,29 +4647,34 @@ msgid "Supplier part description" msgstr "供应商商品描述" #: company/models.py:823 company/templates/company/supplier_part.html:187 -#: part/admin.py:412 part/models.py:4178 part/templates/part/upload_bom.html:59 +#: order/serializers.py:661 part/admin.py:412 part/models.py:4250 +#: part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_purchase_order_report.html:32 #: report/templates/report/inventree_return_order_report.html:27 #: report/templates/report/inventree_sales_order_report.html:32 #: report/templates/report/inventree_stock_location_report.html:105 -#: stock/serializers.py:768 +#: stock/serializers.py:773 templates/js/translated/purchase_order.js:1185 +#: templates/js/translated/purchase_order.js:1344 msgid "Note" msgstr "备注" -#: company/models.py:832 part/models.py:2013 +#: company/models.py:832 part/models.py:2079 msgid "base cost" msgstr "" -#: company/models.py:833 part/models.py:2014 +#: company/models.py:833 part/models.py:2080 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低收费(例如库存费)" #: company/models.py:840 company/templates/company/supplier_part.html:160 -#: stock/admin.py:228 stock/models.py:798 stock/serializers.py:1541 -#: stock/templates/stock/item_base.html:240 +#: order/serializers.py:653 stock/admin.py:228 stock/models.py:796 +#: stock/serializers.py:1546 stock/templates/stock/item_base.html:240 #: templates/js/translated/company.js:1646 -#: templates/js/translated/stock.js:2424 +#: templates/js/translated/purchase_order.js:1169 +#: templates/js/translated/purchase_order.js:1332 +#: templates/js/translated/stock.js:1210 templates/js/translated/stock.js:1242 +#: templates/js/translated/stock.js:2505 msgid "Packaging" msgstr "打包" @@ -4581,12 +4683,12 @@ msgid "Part packaging" msgstr "商品打包" #: company/models.py:846 templates/js/translated/company.js:1651 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 #: templates/js/translated/purchase_order.js:311 #: templates/js/translated/purchase_order.js:841 #: templates/js/translated/purchase_order.js:1103 -#: templates/js/translated/purchase_order.js:2084 -#: templates/js/translated/purchase_order.js:2101 +#: templates/js/translated/purchase_order.js:2155 +#: templates/js/translated/purchase_order.js:2172 msgid "Pack Quantity" msgstr "" @@ -4594,7 +4696,7 @@ msgstr "" msgid "Total quantity supplied in a single pack. Leave empty for single items." msgstr "" -#: company/models.py:867 part/models.py:2020 +#: company/models.py:867 part/models.py:2086 msgid "multiple" msgstr "" @@ -4630,7 +4732,7 @@ msgstr "该公司使用的默认货币" msgid "Company Name" msgstr "公司名称" -#: company/serializers.py:384 part/admin.py:126 part/serializers.py:855 +#: company/serializers.py:386 part/admin.py:126 part/serializers.py:888 #: part/templates/part/part_base.html:197 #: templates/js/translated/company.js:1689 #: templates/js/translated/table_filters.js:355 @@ -4642,7 +4744,7 @@ msgstr "" #: templates/js/translated/company.js:1287 #: templates/js/translated/company.js:1575 #: templates/js/translated/model_renderers.js:312 -#: templates/js/translated/part.js:814 templates/js/translated/part.js:1222 +#: templates/js/translated/part.js:816 templates/js/translated/part.js:1224 msgid "Inactive" msgstr "" @@ -4702,16 +4804,16 @@ msgstr "从 URL 下载图片" msgid "Delete image" msgstr "" -#: company/templates/company/company_base.html:92 order/models.py:938 -#: order/models.py:2058 order/templates/order/return_order_base.html:131 -#: order/templates/order/sales_order_base.html:148 stock/models.py:820 -#: stock/models.py:821 stock/serializers.py:1291 +#: company/templates/company/company_base.html:92 order/models.py:947 +#: order/models.py:2067 order/templates/order/return_order_base.html:131 +#: order/templates/order/sales_order_base.html:148 stock/models.py:818 +#: stock/models.py:819 stock/serializers.py:1296 #: stock/templates/stock/item_base.html:405 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:503 #: templates/js/translated/return_order.js:295 #: templates/js/translated/sales_order.js:820 -#: templates/js/translated/stock.js:2959 +#: templates/js/translated/stock.js:3040 #: templates/js/translated/table_filters.js:813 msgid "Customer" msgstr "客户" @@ -4725,7 +4827,7 @@ msgid "Phone" msgstr "电话" #: company/templates/company/company_base.html:211 -#: part/templates/part/part_base.html:527 +#: part/templates/part/part_base.html:536 msgid "Remove Image" msgstr "" @@ -4734,19 +4836,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:214 -#: part/templates/part/part_base.html:530 +#: part/templates/part/part_base.html:539 #: templates/InvenTree/settings/user.html:88 #: templates/InvenTree/settings/user_sso.html:43 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:243 -#: part/templates/part/part_base.html:559 +#: part/templates/part/part_base.html:568 msgid "Upload Image" msgstr "上传图片" #: company/templates/company/company_base.html:258 -#: part/templates/part/part_base.html:613 +#: part/templates/part/part_base.html:622 msgid "Download Image" msgstr "下载图片" @@ -4914,7 +5016,7 @@ msgstr "删除生产商商品" #: company/templates/company/manufacturer_part.html:65 #: company/templates/company/supplier_part.html:97 order/api.py:440 -#: order/serializers.py:526 +#: order/serializers.py:527 msgid "Internal Part" msgstr "内部商品" @@ -4924,7 +5026,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:119 #: company/templates/company/supplier_part.html:15 company/views.py:31 -#: part/admin.py:122 part/serializers.py:860 +#: part/admin.py:122 part/serializers.py:894 #: part/templates/part/part_sidebar.html:33 templates/InvenTree/search.html:190 #: templates/navbar.html:48 msgid "Suppliers" @@ -4945,7 +5047,7 @@ msgid "New Parameter" msgstr "新建参数" #: company/templates/company/manufacturer_part.html:196 -#: templates/js/translated/part.js:1426 +#: templates/js/translated/part.js:1428 msgid "Add Parameter" msgstr "添加参数" @@ -5012,12 +5114,12 @@ msgstr "" msgid "No supplier information available" msgstr "" -#: company/templates/company/supplier_part.html:139 order/serializers.py:515 -#: part/bom.py:279 part/bom.py:311 part/serializers.py:537 -#: templates/js/translated/company.js:349 templates/js/translated/part.js:1790 +#: company/templates/company/supplier_part.html:139 order/serializers.py:516 +#: part/bom.py:279 part/bom.py:311 part/serializers.py:539 +#: templates/js/translated/company.js:349 templates/js/translated/part.js:1792 #: templates/js/translated/pricing.js:510 -#: templates/js/translated/purchase_order.js:1850 -#: templates/js/translated/purchase_order.js:2028 +#: templates/js/translated/purchase_order.js:1921 +#: templates/js/translated/purchase_order.js:2099 msgid "SKU" msgstr "" @@ -5032,7 +5134,7 @@ msgstr "" #: company/templates/company/supplier_part.html:210 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:208 -#: templates/js/translated/stock.js:537 +#: templates/js/translated/stock.js:538 msgid "New Stock Item" msgstr "" @@ -5063,16 +5165,16 @@ msgid "Update Part Availability" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/serializers.py:859 part/stocktake.py:224 +#: part/serializers.py:892 part/stocktake.py:224 #: part/templates/part/category.html:183 #: part/templates/part/category_sidebar.html:17 stock/admin.py:68 -#: stock/serializers.py:976 stock/serializers.py:1154 +#: stock/serializers.py:981 stock/serializers.py:1159 #: stock/templates/stock/location.html:170 #: stock/templates/stock/location.html:191 #: stock/templates/stock/location.html:203 #: stock/templates/stock/location_sidebar.html:7 -#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1064 -#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2766 +#: templates/InvenTree/search.html:155 templates/js/translated/part.js:1066 +#: templates/js/translated/search.js:172 templates/js/translated/stock.js:2847 #: users/models.py:206 msgid "Stock Items" msgstr "库存项" @@ -5112,95 +5214,101 @@ msgstr "已添加" msgid "Invalid export format" msgstr "无效的备损值" -#: importer/models.py:56 +#: importer/models.py:58 msgid "Timestamp" msgstr "" -#: importer/models.py:61 +#: importer/models.py:63 #, fuzzy #| msgid "Select file to upload" msgid "Data file to import" msgstr "选择要上传的文件" -#: importer/models.py:70 templates/js/translated/tables.js:558 +#: importer/models.py:72 templates/js/translated/tables.js:558 msgid "Columns" msgstr "" -#: importer/models.py:81 +#: importer/models.py:83 #, fuzzy #| msgid "Import Part" msgid "Import status" msgstr "导入商品" -#: importer/models.py:91 +#: importer/models.py:93 #, fuzzy #| msgid "Build Details" msgid "Field Defaults" msgstr "生产详情" -#: importer/models.py:201 +#: importer/models.py:100 +#, fuzzy +#| msgid "Print actions" +msgid "Field Overrides" +msgstr "打印操作" + +#: importer/models.py:222 #, fuzzy #| msgid "Required build quantity has not been completed" msgid "Some required fields have not been mapped" msgstr "所需生产数量尚未完成" -#: importer/models.py:346 +#: importer/models.py:379 msgid "Column is already mapped to a database field" msgstr "" -#: importer/models.py:351 +#: importer/models.py:384 msgid "Field is already mapped to a data column" msgstr "" -#: importer/models.py:360 +#: importer/models.py:393 msgid "Column mapping must be linked to a valid import session" msgstr "" -#: importer/models.py:365 +#: importer/models.py:398 msgid "Column does not exist in the data file" msgstr "" -#: importer/models.py:372 +#: importer/models.py:405 msgid "Field does not exist in the target model" msgstr "" -#: importer/models.py:376 +#: importer/models.py:409 msgid "Selected field is read-only" msgstr "" -#: importer/models.py:381 importer/models.py:452 +#: importer/models.py:414 importer/models.py:485 #, fuzzy #| msgid "Report Settings" msgid "Import Session" msgstr "报表设置" -#: importer/models.py:385 +#: importer/models.py:418 #, fuzzy #| msgid "File Fields" msgid "Field" msgstr "文件字段" -#: importer/models.py:387 +#: importer/models.py:420 msgid "Column" msgstr "" -#: importer/models.py:456 +#: importer/models.py:489 msgid "Row Index" msgstr "" -#: importer/models.py:459 +#: importer/models.py:492 msgid "Original row data" msgstr "" -#: importer/models.py:462 part/models.py:3841 +#: importer/models.py:495 part/models.py:3913 msgid "Data" msgstr "" -#: importer/models.py:464 machine/models.py:110 +#: importer/models.py:497 machine/models.py:110 msgid "Errors" msgstr "" -#: importer/models.py:466 part/api.py:874 +#: importer/models.py:499 part/api.py:874 msgid "Valid" msgstr "" @@ -5220,29 +5328,41 @@ msgstr "" msgid "Invalid data file dimensions" msgstr "内嵌标签显示" -#: importer/serializers.py:135 +#: importer/serializers.py:90 +#, fuzzy +#| msgid "Build Details" +msgid "Invalid field defaults" +msgstr "生产详情" + +#: importer/serializers.py:103 +#, fuzzy +#| msgid "Invalid quantity provided" +msgid "Invalid field overrides" +msgstr "提供的数量无效" + +#: importer/serializers.py:164 msgid "Rows" msgstr "" -#: importer/serializers.py:136 +#: importer/serializers.py:165 msgid "List of row IDs to accept" msgstr "" -#: importer/serializers.py:149 +#: importer/serializers.py:178 #, fuzzy #| msgid "No data rows provided" msgid "No rows provided" msgstr "没有提供数据行" -#: importer/serializers.py:153 +#: importer/serializers.py:182 msgid "Row does not belong to this session" msgstr "" -#: importer/serializers.py:156 +#: importer/serializers.py:185 msgid "Row contains invalid data" msgstr "" -#: importer/serializers.py:159 +#: importer/serializers.py:188 #, fuzzy #| msgid "This build output has already been completed" msgid "Row has already been completed" @@ -5284,68 +5404,72 @@ msgstr "" msgid "Data file contains too many rows" msgstr "" -#: importer/validators.py:49 +#: importer/validators.py:53 #, fuzzy #| msgid "Must be a valid number" msgid "Value must be a valid dictionary object" msgstr "必须是有效数字" -#: machine/machine_types/label_printer.py:212 +#: machine/machine_types/label_printer.py:215 msgid "Copies" msgstr "" -#: machine/machine_types/label_printer.py:213 +#: machine/machine_types/label_printer.py:216 #, fuzzy #| msgid "Number of stock items to build" msgid "Number of copies to print for each label" msgstr "要生产的项目数量" -#: machine/machine_types/label_printer.py:228 +#: machine/machine_types/label_printer.py:231 #, fuzzy #| msgid "Connection error" msgid "Connected" msgstr "连接错误" -#: machine/machine_types/label_printer.py:229 order/api.py:1388 +#: machine/machine_types/label_printer.py:232 order/api.py:1388 #: templates/js/translated/sales_order.js:1078 msgid "Unknown" msgstr "" -#: machine/machine_types/label_printer.py:230 +#: machine/machine_types/label_printer.py:233 #, fuzzy #| msgid "Print Label" msgid "Printing" msgstr "打印标签" -#: machine/machine_types/label_printer.py:231 +#: machine/machine_types/label_printer.py:234 msgid "No media" msgstr "" -#: machine/machine_types/label_printer.py:232 +#: machine/machine_types/label_printer.py:235 +msgid "Paper jam" +msgstr "" + +#: machine/machine_types/label_printer.py:236 #, fuzzy #| msgid "Rejected" msgid "Disconnected" msgstr "已拒绝" -#: machine/machine_types/label_printer.py:239 +#: machine/machine_types/label_printer.py:243 #, fuzzy #| msgid "Label name" msgid "Label Printer" msgstr "标签名称" -#: machine/machine_types/label_printer.py:240 +#: machine/machine_types/label_printer.py:244 #, fuzzy #| msgid "Allocate selected items" msgid "Directly print labels for various items." msgstr "分配选定项目" -#: machine/machine_types/label_printer.py:246 +#: machine/machine_types/label_printer.py:250 #, fuzzy #| msgid "Print actions" msgid "Printer Location" msgstr "打印操作" -#: machine/machine_types/label_printer.py:247 +#: machine/machine_types/label_printer.py:251 msgid "Scope the printer to a specific location" msgstr "" @@ -5409,7 +5533,7 @@ msgstr "" #: report/templates/report/inventree_purchase_order_report.html:31 #: report/templates/report/inventree_sales_order_report.html:31 #: templates/js/translated/order.js:327 -#: templates/js/translated/purchase_order.js:2125 +#: templates/js/translated/purchase_order.js:2196 #: templates/js/translated/sales_order.js:1883 msgid "Total Price" msgstr "" @@ -5430,9 +5554,9 @@ msgstr "" msgid "No matching purchase order found" msgstr "" -#: order/api.py:417 order/api.py:755 order/models.py:1400 order/models.py:1514 -#: order/models.py:1565 order/models.py:1680 order/models.py:1839 -#: order/models.py:2258 order/models.py:2314 +#: order/api.py:417 order/api.py:755 order/models.py:1409 order/models.py:1523 +#: order/models.py:1574 order/models.py:1689 order/models.py:1848 +#: order/models.py:2267 order/models.py:2323 #: templates/js/translated/sales_order.js:1524 msgid "Order" msgstr "" @@ -5449,26 +5573,26 @@ msgstr "订单编码" msgid "Order Pending" msgstr "待定" -#: order/api.py:1382 order/models.py:380 order/models.py:1401 -#: order/models.py:1515 order/templates/order/order_base.html:9 +#: order/api.py:1382 order/models.py:380 order/models.py:1410 +#: order/models.py:1524 order/templates/order/order_base.html:9 #: order/templates/order/order_base.html:18 #: report/templates/report/inventree_purchase_order_report.html:14 #: stock/serializers.py:120 stock/templates/stock/item_base.html:176 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/part.js:1749 templates/js/translated/pricing.js:804 +#: templates/js/translated/part.js:1751 templates/js/translated/pricing.js:804 #: templates/js/translated/purchase_order.js:168 #: templates/js/translated/purchase_order.js:753 -#: templates/js/translated/purchase_order.js:1673 -#: templates/js/translated/stock.js:2260 templates/js/translated/stock.js:2907 +#: templates/js/translated/purchase_order.js:1744 +#: templates/js/translated/stock.js:2341 templates/js/translated/stock.js:2988 msgid "Purchase Order" msgstr "" -#: order/api.py:1386 order/models.py:2007 order/models.py:2259 -#: order/models.py:2315 order/templates/order/return_order_base.html:9 +#: order/api.py:1386 order/models.py:2016 order/models.py:2268 +#: order/models.py:2324 order/templates/order/return_order_base.html:9 #: order/templates/order/return_order_base.html:28 #: report/templates/report/inventree_return_order_report.html:13 #: templates/js/translated/return_order.js:280 -#: templates/js/translated/stock.js:2941 +#: templates/js/translated/stock.js:3022 #, fuzzy #| msgid "Returned" msgid "Return Order" @@ -5508,7 +5632,7 @@ msgstr "描述 (可选)" msgid "Select project code for this order" msgstr "负责此订单的用户或群组" -#: order/models.py:303 order/models.py:1301 order/models.py:1733 +#: order/models.py:303 order/models.py:1310 order/models.py:1742 msgid "Link to external page" msgstr "" @@ -5536,11 +5660,11 @@ msgstr "此构建订单的优先级" msgid "Company address for this order" msgstr "负责此订单的用户或群组" -#: order/models.py:464 order/models.py:927 +#: order/models.py:464 order/models.py:936 msgid "Order reference" msgstr "" -#: order/models.py:472 order/models.py:951 +#: order/models.py:472 order/models.py:960 msgid "Purchase order status" msgstr "" @@ -5549,7 +5673,7 @@ msgid "Company from which the items are being ordered" msgstr "订购该商品的公司" #: order/models.py:498 order/templates/order/order_base.html:148 -#: templates/js/translated/purchase_order.js:1702 +#: templates/js/translated/purchase_order.js:1773 msgid "Supplier Reference" msgstr "" @@ -5561,15 +5685,15 @@ msgstr "" msgid "received by" msgstr "" -#: order/models.py:514 order/models.py:2084 +#: order/models.py:514 order/models.py:2093 msgid "Issue Date" msgstr "" -#: order/models.py:515 order/models.py:2085 +#: order/models.py:515 order/models.py:2094 msgid "Date order was issued" msgstr "" -#: order/models.py:522 order/models.py:2092 +#: order/models.py:522 order/models.py:2101 msgid "Date order was completed" msgstr "" @@ -5577,545 +5701,547 @@ msgstr "" msgid "Part supplier must match PO supplier" msgstr "" -#: order/models.py:760 +#: order/models.py:768 msgid "Quantity must be a positive number" msgstr "数量必须大于0" -#: order/models.py:939 +#: order/models.py:948 msgid "Company to which the items are being sold" msgstr "向其出售该商品的公司" -#: order/models.py:962 order/models.py:2077 +#: order/models.py:971 order/models.py:2086 msgid "Customer Reference " msgstr "" -#: order/models.py:963 order/models.py:2078 +#: order/models.py:972 order/models.py:2087 msgid "Customer order reference code" msgstr "" -#: order/models.py:967 order/models.py:1687 +#: order/models.py:976 order/models.py:1696 #: templates/js/translated/sales_order.js:879 #: templates/js/translated/sales_order.js:1060 msgid "Shipment Date" msgstr "" -#: order/models.py:976 +#: order/models.py:985 msgid "shipped by" msgstr "" -#: order/models.py:1025 +#: order/models.py:1034 #, fuzzy #| msgid "Build output is already completed" msgid "Order is already complete" msgstr "生产产出已完成" -#: order/models.py:1028 +#: order/models.py:1037 #, fuzzy #| msgid "Order cannot be cancelled" msgid "Order is already cancelled" msgstr "无法取消订单" -#: order/models.py:1032 +#: order/models.py:1041 #, fuzzy #| msgid "Build Order is ready to mark as completed" msgid "Only an open order can be marked as complete" msgstr "构建订单已准备好标记为已完成" -#: order/models.py:1036 +#: order/models.py:1045 msgid "Order cannot be completed as there are incomplete shipments" msgstr "" -#: order/models.py:1041 +#: order/models.py:1050 msgid "Order cannot be completed as there are incomplete line items" msgstr "" -#: order/models.py:1273 +#: order/models.py:1282 msgid "Item quantity" msgstr "" -#: order/models.py:1290 +#: order/models.py:1299 msgid "Line item reference" msgstr "" -#: order/models.py:1297 +#: order/models.py:1306 msgid "Line item notes" msgstr "" -#: order/models.py:1309 +#: order/models.py:1318 msgid "Target date for this line item (leave blank to use the target date from the order)" msgstr "" -#: order/models.py:1330 +#: order/models.py:1339 #, fuzzy #| msgid "Description (optional)" msgid "Line item description (optional)" msgstr "描述 (可选)" -#: order/models.py:1336 +#: order/models.py:1345 msgid "Context" msgstr "" -#: order/models.py:1337 +#: order/models.py:1346 msgid "Additional context for this line" msgstr "" -#: order/models.py:1347 +#: order/models.py:1356 msgid "Unit price" msgstr "" -#: order/models.py:1361 +#: order/models.py:1370 #, fuzzy #| msgid "Delete parameters" msgid "Purchase Order Line Item" msgstr "删除参数" -#: order/models.py:1385 +#: order/models.py:1394 msgid "Supplier part must match supplier" msgstr "" -#: order/models.py:1392 +#: order/models.py:1401 msgid "deleted" msgstr "" -#: order/models.py:1420 +#: order/models.py:1429 msgid "Supplier part" msgstr "供应商商品" -#: order/models.py:1427 order/templates/order/order_base.html:196 -#: templates/js/translated/part.js:1873 templates/js/translated/part.js:1905 -#: templates/js/translated/purchase_order.js:1306 -#: templates/js/translated/purchase_order.js:2169 +#: order/models.py:1436 order/templates/order/order_base.html:196 +#: templates/js/translated/part.js:1875 templates/js/translated/part.js:1907 +#: templates/js/translated/purchase_order.js:1369 +#: templates/js/translated/purchase_order.js:2240 #: templates/js/translated/return_order.js:763 #: templates/js/translated/table_filters.js:120 #: templates/js/translated/table_filters.js:602 msgid "Received" msgstr "" -#: order/models.py:1428 +#: order/models.py:1437 msgid "Number of items received" msgstr "" -#: order/models.py:1436 stock/models.py:939 stock/serializers.py:602 +#: order/models.py:1445 stock/models.py:937 stock/serializers.py:607 #: stock/templates/stock/item_base.html:183 -#: templates/js/translated/stock.js:2311 +#: templates/js/translated/stock.js:2392 msgid "Purchase Price" msgstr "采购价格" -#: order/models.py:1437 +#: order/models.py:1446 msgid "Unit purchase price" msgstr "" -#: order/models.py:1452 +#: order/models.py:1461 msgid "Where does the Purchaser want this item to be stored?" msgstr "" -#: order/models.py:1503 +#: order/models.py:1512 #, fuzzy #| msgid "Purchase Order Settings" msgid "Purchase Order Extra Line" msgstr "采购订单设置" -#: order/models.py:1532 +#: order/models.py:1541 #, fuzzy #| msgid "Delete parameters" msgid "Sales Order Line Item" msgstr "删除参数" -#: order/models.py:1553 +#: order/models.py:1562 msgid "Virtual part cannot be assigned to a sales order" msgstr "" -#: order/models.py:1558 +#: order/models.py:1567 msgid "Only salable parts can be assigned to a sales order" msgstr "" -#: order/models.py:1584 part/templates/part/part_pricing.html:107 +#: order/models.py:1593 part/templates/part/part_pricing.html:107 #: part/templates/part/prices.html:139 templates/js/translated/pricing.js:957 msgid "Sale Price" msgstr "销售价格" -#: order/models.py:1585 +#: order/models.py:1594 msgid "Unit sale price" msgstr "" -#: order/models.py:1594 order/status_codes.py:43 +#: order/models.py:1603 order/status_codes.py:43 #: templates/js/translated/sales_order.js:1559 #: templates/js/translated/sales_order.js:1680 #: templates/js/translated/sales_order.js:1993 msgid "Shipped" msgstr "已发货" -#: order/models.py:1595 +#: order/models.py:1604 msgid "Shipped quantity" msgstr "" -#: order/models.py:1667 +#: order/models.py:1676 #, fuzzy #| msgid "Sales Order Settings" msgid "Sales Order Shipment" msgstr "销售订单设置" -#: order/models.py:1688 +#: order/models.py:1697 msgid "Date of shipment" msgstr "" -#: order/models.py:1694 templates/js/translated/sales_order.js:1072 +#: order/models.py:1703 templates/js/translated/sales_order.js:1072 msgid "Delivery Date" msgstr "" -#: order/models.py:1695 +#: order/models.py:1704 msgid "Date of delivery of shipment" msgstr "" -#: order/models.py:1703 +#: order/models.py:1712 msgid "Checked By" msgstr "" -#: order/models.py:1704 +#: order/models.py:1713 msgid "User who checked this shipment" msgstr "" -#: order/models.py:1711 order/models.py:1934 order/serializers.py:1398 -#: order/serializers.py:1508 templates/js/translated/model_renderers.js:454 +#: order/models.py:1720 order/models.py:1943 order/serializers.py:1420 +#: order/serializers.py:1530 templates/js/translated/model_renderers.js:454 msgid "Shipment" msgstr "" -#: order/models.py:1712 +#: order/models.py:1721 msgid "Shipment number" msgstr "" -#: order/models.py:1720 +#: order/models.py:1729 msgid "Tracking Number" msgstr "" -#: order/models.py:1721 +#: order/models.py:1730 msgid "Shipment tracking information" msgstr "" -#: order/models.py:1728 +#: order/models.py:1737 msgid "Invoice Number" msgstr "" -#: order/models.py:1729 +#: order/models.py:1738 msgid "Reference number for associated invoice" msgstr "" -#: order/models.py:1749 +#: order/models.py:1758 msgid "Shipment has already been sent" msgstr "" -#: order/models.py:1752 +#: order/models.py:1761 msgid "Shipment has no allocated stock items" msgstr "" -#: order/models.py:1828 +#: order/models.py:1837 #, fuzzy #| msgid "Sales Order Settings" msgid "Sales Order Extra Line" msgstr "销售订单设置" -#: order/models.py:1857 +#: order/models.py:1866 #, fuzzy #| msgid "Sales Order Settings" msgid "Sales Order Allocation" msgstr "销售订单设置" -#: order/models.py:1880 order/models.py:1882 +#: order/models.py:1889 order/models.py:1891 msgid "Stock item has not been assigned" msgstr "" -#: order/models.py:1889 +#: order/models.py:1898 msgid "Cannot allocate stock item to a line with a different part" msgstr "" -#: order/models.py:1892 +#: order/models.py:1901 msgid "Cannot allocate stock to a line without a part" msgstr "" -#: order/models.py:1895 +#: order/models.py:1904 msgid "Allocation quantity cannot exceed stock quantity" msgstr "" -#: order/models.py:1914 order/serializers.py:1275 +#: order/models.py:1923 order/serializers.py:1297 msgid "Quantity must be 1 for serialized stock item" msgstr "" -#: order/models.py:1917 +#: order/models.py:1926 msgid "Sales order does not match shipment" msgstr "" -#: order/models.py:1918 plugin/base/barcodes/api.py:481 +#: order/models.py:1927 plugin/base/barcodes/api.py:481 msgid "Shipment does not match sales order" msgstr "" -#: order/models.py:1926 +#: order/models.py:1935 msgid "Line" msgstr "" -#: order/models.py:1935 +#: order/models.py:1944 msgid "Sales order shipment reference" msgstr "" -#: order/models.py:1948 order/models.py:2266 +#: order/models.py:1957 order/models.py:2275 #: templates/js/translated/return_order.js:721 msgid "Item" msgstr "" -#: order/models.py:1949 +#: order/models.py:1958 msgid "Select stock item to allocate" msgstr "" -#: order/models.py:1958 +#: order/models.py:1967 msgid "Enter stock allocation quantity" msgstr "" -#: order/models.py:2047 +#: order/models.py:2056 #, fuzzy #| msgid "Build Order Reference" msgid "Return Order reference" msgstr "相关生产订单" -#: order/models.py:2059 +#: order/models.py:2068 #, fuzzy #| msgid "Company from which the items are being ordered" msgid "Company from which items are being returned" msgstr "订购该商品的公司" -#: order/models.py:2071 +#: order/models.py:2080 msgid "Return order status" msgstr "" -#: order/models.py:2237 +#: order/models.py:2246 #, fuzzy #| msgid "Delete parameters" msgid "Return Order Line Item" msgstr "删除参数" -#: order/models.py:2251 +#: order/models.py:2260 msgid "Only serialized items can be assigned to a Return Order" msgstr "" -#: order/models.py:2267 +#: order/models.py:2276 #, fuzzy #| msgid "Returned from customer" msgid "Select item to return from customer" msgstr "从客户退货" -#: order/models.py:2273 +#: order/models.py:2282 msgid "Received Date" msgstr "" -#: order/models.py:2274 +#: order/models.py:2283 msgid "The date this this return item was received" msgstr "" -#: order/models.py:2285 templates/js/translated/return_order.js:732 +#: order/models.py:2294 templates/js/translated/return_order.js:732 #: templates/js/translated/table_filters.js:123 msgid "Outcome" msgstr "" -#: order/models.py:2286 +#: order/models.py:2295 msgid "Outcome for this line item" msgstr "" -#: order/models.py:2293 +#: order/models.py:2302 msgid "Cost associated with return or repair for this line item" msgstr "" -#: order/models.py:2303 +#: order/models.py:2312 #, fuzzy #| msgid "Build Order Settings" msgid "Return Order Extra Line" msgstr "生产订单设置" -#: order/serializers.py:83 order/templates/order/po_sidebar.html:5 -#: order/templates/order/return_order_detail.html:18 -#: order/templates/order/so_sidebar.html:5 -#: report/templates/report/inventree_purchase_order_report.html:22 -#: report/templates/report/inventree_return_order_report.html:19 -#: report/templates/report/inventree_sales_order_report.html:22 -msgid "Line Items" -msgstr "" - #: order/serializers.py:87 #, fuzzy #| msgid "Completed items" msgid "Completed Lines" msgstr "已完成项目" -#: order/serializers.py:305 +#: order/serializers.py:306 msgid "Order cannot be cancelled" msgstr "无法取消订单" -#: order/serializers.py:320 order/serializers.py:1291 +#: order/serializers.py:321 order/serializers.py:1313 msgid "Allow order to be closed with incomplete line items" msgstr "" -#: order/serializers.py:330 order/serializers.py:1301 +#: order/serializers.py:331 order/serializers.py:1323 msgid "Order has incomplete line items" msgstr "" -#: order/serializers.py:468 +#: order/serializers.py:469 msgid "Order is not open" msgstr "" -#: order/serializers.py:489 +#: order/serializers.py:490 #, fuzzy #| msgid "Part Pricing" msgid "Auto Pricing" msgstr "商品价格" -#: order/serializers.py:491 +#: order/serializers.py:492 msgid "Automatically calculate purchase price based on supplier part data" msgstr "" -#: order/serializers.py:501 +#: order/serializers.py:502 msgid "Purchase price currency" msgstr "" -#: order/serializers.py:507 +#: order/serializers.py:508 #, fuzzy #| msgid "Select Stock Items" msgid "Merge Items" msgstr "选择库存项" -#: order/serializers.py:509 +#: order/serializers.py:510 msgid "Merge items with the same part, destination and target date into one line item" msgstr "" -#: order/serializers.py:522 part/models.py:945 +#: order/serializers.py:523 part/models.py:1001 msgid "Internal Part Number" msgstr "内部商品编号" -#: order/serializers.py:530 +#: order/serializers.py:531 #, fuzzy #| msgid "Internal Part Number" msgid "Internal Part Name" msgstr "内部商品编号" -#: order/serializers.py:546 +#: order/serializers.py:547 msgid "Supplier part must be specified" msgstr "" -#: order/serializers.py:549 +#: order/serializers.py:550 msgid "Purchase order must be specified" msgstr "" -#: order/serializers.py:557 +#: order/serializers.py:558 msgid "Supplier must match purchase order" msgstr "" -#: order/serializers.py:558 +#: order/serializers.py:559 msgid "Purchase order must match supplier" msgstr "" -#: order/serializers.py:598 order/serializers.py:1369 +#: order/serializers.py:602 order/serializers.py:1391 msgid "Line Item" msgstr "" -#: order/serializers.py:604 +#: order/serializers.py:608 msgid "Line item does not match purchase order" msgstr "" -#: order/serializers.py:614 order/serializers.py:722 order/serializers.py:1715 +#: order/serializers.py:618 order/serializers.py:742 order/serializers.py:1737 msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:630 templates/js/translated/purchase_order.js:1130 +#: order/serializers.py:634 templates/js/translated/purchase_order.js:1130 +#: templates/js/translated/stock.js:1196 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:638 templates/js/translated/purchase_order.js:1154 +#: order/serializers.py:642 templates/js/translated/purchase_order.js:1155 msgid "Enter serial numbers for incoming stock items" msgstr "" -#: order/serializers.py:649 templates/js/translated/barcode.js:52 +#: order/serializers.py:654 +msgid "Override packaging information for incoming stock items" +msgstr "" + +#: order/serializers.py:662 +#, fuzzy +#| msgid "Destination stock item" +msgid "Additional note for incoming stock items" +msgstr "目标库存项" + +#: order/serializers.py:669 templates/js/translated/barcode.js:52 msgid "Barcode" msgstr "条形码" -#: order/serializers.py:650 +#: order/serializers.py:670 #, fuzzy #| msgid "Scan Barcode" msgid "Scanned barcode" msgstr "扫描条形码" -#: order/serializers.py:666 +#: order/serializers.py:686 msgid "Barcode is already in use" msgstr "" -#: order/serializers.py:690 +#: order/serializers.py:710 msgid "An integer quantity must be provided for trackable parts" msgstr "" -#: order/serializers.py:738 order/serializers.py:1731 +#: order/serializers.py:758 order/serializers.py:1753 msgid "Line items must be provided" msgstr "" -#: order/serializers.py:754 +#: order/serializers.py:774 msgid "Destination location must be specified" msgstr "" -#: order/serializers.py:765 +#: order/serializers.py:785 msgid "Supplied barcode values must be unique" msgstr "" -#: order/serializers.py:1117 +#: order/serializers.py:1139 msgid "Sale price currency" msgstr "" -#: order/serializers.py:1178 +#: order/serializers.py:1200 msgid "No shipment details provided" msgstr "" -#: order/serializers.py:1239 order/serializers.py:1378 +#: order/serializers.py:1261 order/serializers.py:1400 msgid "Line item is not associated with this order" msgstr "" -#: order/serializers.py:1258 +#: order/serializers.py:1280 msgid "Quantity must be positive" msgstr "" -#: order/serializers.py:1388 +#: order/serializers.py:1410 msgid "Enter serial numbers to allocate" msgstr "" -#: order/serializers.py:1410 order/serializers.py:1516 +#: order/serializers.py:1432 order/serializers.py:1538 msgid "Shipment has already been shipped" msgstr "" -#: order/serializers.py:1413 order/serializers.py:1519 +#: order/serializers.py:1435 order/serializers.py:1541 msgid "Shipment is not associated with this order" msgstr "" -#: order/serializers.py:1460 +#: order/serializers.py:1482 msgid "No match found for the following serial numbers" msgstr "" -#: order/serializers.py:1467 +#: order/serializers.py:1489 msgid "The following serial numbers are already allocated" msgstr "" -#: order/serializers.py:1685 +#: order/serializers.py:1707 msgid "Return order line item" msgstr "" -#: order/serializers.py:1691 +#: order/serializers.py:1713 #, fuzzy #| msgid "Build output does not match Build Order" msgid "Line item does not match return order" msgstr "生产产出与订单不匹配" -#: order/serializers.py:1694 +#: order/serializers.py:1716 #, fuzzy #| msgid "This build output has already been completed" msgid "Line item has already been received" msgstr "此生产产出已经完成" -#: order/serializers.py:1723 +#: order/serializers.py:1745 msgid "Items can only be received against orders which are in progress" msgstr "" -#: order/serializers.py:1806 +#: order/serializers.py:1828 #, fuzzy #| msgid "Uses default currency" msgid "Line price currency" @@ -6341,13 +6467,13 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_fields.html:71 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:133 templates/js/translated/build.js:529 -#: templates/js/translated/build.js:1629 +#: templates/js/translated/bom.js:133 templates/js/translated/build.js:530 +#: templates/js/translated/build.js:1804 #: templates/js/translated/purchase_order.js:696 -#: templates/js/translated/purchase_order.js:1236 +#: templates/js/translated/purchase_order.js:1288 #: templates/js/translated/return_order.js:505 #: templates/js/translated/sales_order.js:1145 -#: templates/js/translated/stock.js:714 templates/js/translated/stock.js:883 +#: templates/js/translated/stock.js:715 templates/js/translated/stock.js:884 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "移除行" @@ -6463,8 +6589,8 @@ msgstr "" #: part/templates/part/part_pricing.html:58 #: part/templates/part/part_pricing.html:99 #: part/templates/part/part_pricing.html:114 -#: templates/js/translated/part.js:1076 -#: templates/js/translated/purchase_order.js:1752 +#: templates/js/translated/part.js:1078 +#: templates/js/translated/purchase_order.js:1823 #: templates/js/translated/return_order.js:380 #: templates/js/translated/sales_order.js:891 msgid "Total Cost" @@ -6543,7 +6669,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:71 -#: templates/js/translated/bom.js:1277 templates/js/translated/filters.js:296 +#: templates/js/translated/bom.js:1277 templates/js/translated/build.js:1065 +#: templates/js/translated/filters.js:296 msgid "Actions" msgstr "" @@ -6573,30 +6700,21 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:39 part/admin.py:398 part/models.py:3991 part/stocktake.py:219 -#: stock/admin.py:152 -msgid "Part ID" -msgstr "商品ID" - -#: part/admin.py:45 part/stocktake.py:221 -msgid "Part Description" -msgstr "" - -#: part/admin.py:48 part/models.py:944 part/templates/part/part_base.html:269 +#: part/admin.py:48 part/models.py:1000 part/templates/part/part_base.html:269 #: report/templates/report/inventree_stock_location_report.html:103 -#: templates/js/translated/part.js:1230 templates/js/translated/part.js:2344 -#: templates/js/translated/stock.js:2036 +#: templates/js/translated/part.js:1232 templates/js/translated/part.js:2347 +#: templates/js/translated/stock.js:2117 msgid "IPN" msgstr "" -#: part/admin.py:50 part/models.py:953 part/templates/part/part_base.html:277 -#: report/models.py:162 templates/js/translated/part.js:1235 -#: templates/js/translated/part.js:2350 +#: part/admin.py:50 part/models.py:1009 part/templates/part/part_base.html:286 +#: report/models.py:162 templates/js/translated/part.js:1237 +#: templates/js/translated/part.js:2353 msgid "Revision" msgstr "" -#: part/admin.py:53 part/admin.py:319 part/models.py:926 -#: part/templates/part/category.html:94 part/templates/part/part_base.html:298 +#: part/admin.py:53 part/admin.py:319 part/models.py:982 +#: part/templates/part/category.html:94 part/templates/part/part_base.html:307 msgid "Keywords" msgstr "关键词" @@ -6610,7 +6728,7 @@ msgstr "商品名称" msgid "Category ID" msgstr "类别 ID" -#: part/admin.py:67 part/admin.py:304 part/serializers.py:837 +#: part/admin.py:67 part/admin.py:304 part/serializers.py:870 #: part/stocktake.py:223 msgid "Category Name" msgstr "" @@ -6623,11 +6741,11 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:81 part/models.py:912 part/templates/part/part_base.html:177 +#: part/admin.py:81 part/models.py:968 part/templates/part/part_base.html:177 msgid "Variant Of" msgstr "" -#: part/admin.py:84 part/models.py:1040 part/templates/part/part_base.html:203 +#: part/admin.py:84 part/models.py:1106 part/templates/part/part_base.html:203 msgid "Minimum Stock" msgstr "最低库存" @@ -6635,19 +6753,19 @@ msgstr "最低库存" msgid "Used In" msgstr "" -#: part/admin.py:150 part/serializers.py:854 +#: part/admin.py:150 part/serializers.py:887 #: part/templates/part/part_base.html:241 stock/admin.py:235 -#: templates/js/translated/part.js:714 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:716 templates/js/translated/part.js:2158 msgid "Building" msgstr "" -#: part/admin.py:155 part/models.py:3098 part/models.py:3112 -#: templates/js/translated/part.js:973 +#: part/admin.py:155 part/models.py:3164 part/models.py:3178 +#: templates/js/translated/part.js:975 msgid "Minimum Cost" msgstr "" -#: part/admin.py:158 part/models.py:3105 part/models.py:3119 -#: templates/js/translated/part.js:983 +#: part/admin.py:158 part/models.py:3171 part/models.py:3185 +#: templates/js/translated/part.js:985 msgid "Maximum Cost" msgstr "" @@ -6664,14 +6782,14 @@ msgstr "" msgid "Category Path" msgstr "类别路径" -#: part/admin.py:325 part/models.py:397 part/serializers.py:130 -#: part/serializers.py:282 part/serializers.py:404 +#: part/admin.py:325 part/models.py:398 part/serializers.py:130 +#: part/serializers.py:282 part/serializers.py:406 #: part/templates/part/cat_link.html:3 part/templates/part/category.html:23 #: part/templates/part/category.html:141 part/templates/part/category.html:161 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:36 templates/InvenTree/search.html:84 #: templates/InvenTree/settings/sidebar.html:47 -#: templates/js/translated/part.js:2807 templates/js/translated/search.js:130 +#: templates/js/translated/part.js:2823 templates/js/translated/search.js:130 #: templates/navbar.html:24 users/models.py:203 msgid "Parts" msgstr "商品" @@ -6688,13 +6806,13 @@ msgstr "" msgid "Parent IPN" msgstr "" -#: part/admin.py:415 part/serializers.py:1302 +#: part/admin.py:415 part/serializers.py:1336 #: templates/js/translated/pricing.js:358 #: templates/js/translated/pricing.js:1024 msgid "Minimum Price" msgstr "" -#: part/admin.py:420 part/serializers.py:1317 +#: part/admin.py:420 part/serializers.py:1351 #: templates/js/translated/pricing.js:353 #: templates/js/translated/pricing.js:1032 msgid "Maximum Price" @@ -6736,7 +6854,7 @@ msgstr "" msgid "Include sub-categories in filtered results" msgstr "" -#: part/api.py:180 templates/js/translated/part.js:307 +#: part/api.py:180 templates/js/translated/part.js:309 #, fuzzy #| msgid "parent" msgid "Parent" @@ -6788,29 +6906,42 @@ msgstr "" msgid "This option must be selected" msgstr "" -#: part/api.py:1098 +#: part/api.py:917 +#, fuzzy +#| msgid "Part description" +msgid "Is Revision" +msgstr "商品描述" + +#: part/api.py:927 +#, fuzzy +#| msgid "Part description" +msgid "Has Revisions" +msgstr "商品描述" + +#: part/api.py:1118 msgid "BOM Valid" msgstr "" -#: part/api.py:1494 part/models.py:936 part/models.py:3385 part/models.py:3936 -#: part/serializers.py:419 part/serializers.py:1158 +#: part/api.py:1518 part/models.py:992 part/models.py:3451 part/models.py:4008 +#: part/serializers.py:421 part/serializers.py:1192 #: part/templates/part/part_base.html:260 stock/api.py:783 #: templates/InvenTree/settings/settings_staff_js.html:300 #: templates/js/translated/notification.js:60 -#: templates/js/translated/part.js:2380 +#: templates/js/translated/part.js:2383 msgid "Category" msgstr "类别" -#: part/api.py:1784 +#: part/api.py:1808 msgid "Uses" msgstr "" -#: part/bom.py:170 part/models.py:104 part/models.py:979 -#: part/templates/part/category.html:116 part/templates/part/part_base.html:367 +#: part/bom.py:170 part/models.py:105 part/models.py:1045 +#: part/templates/part/category.html:116 part/templates/part/part_base.html:376 +#: templates/js/translated/part.js:2397 msgid "Default Location" msgstr "默认仓储地点" -#: part/bom.py:171 part/serializers.py:861 +#: part/bom.py:171 part/serializers.py:895 #: templates/email/low_stock_notification.html:16 msgid "Total Stock" msgstr "" @@ -6819,784 +6950,823 @@ msgstr "" msgid "Input quantity for price calculation" msgstr "" -#: part/models.py:85 part/models.py:3937 part/templates/part/category.html:16 +#: part/models.py:86 part/models.py:4009 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "商品类别" -#: part/models.py:86 part/templates/part/category.html:136 +#: part/models.py:87 part/templates/part/category.html:136 #: templates/InvenTree/search.html:97 templates/js/translated/search.js:158 #: users/models.py:202 msgid "Part Categories" msgstr "商品类别" -#: part/models.py:105 +#: part/models.py:106 msgid "Default location for parts in this category" msgstr "此类别商品的默认仓储地点" -#: part/models.py:110 stock/models.py:175 templates/js/translated/part.js:2813 -#: templates/js/translated/stock.js:2772 +#: part/models.py:111 stock/models.py:175 templates/js/translated/part.js:2829 +#: templates/js/translated/stock.js:2853 #: templates/js/translated/table_filters.js:239 #: templates/js/translated/table_filters.js:283 msgid "Structural" msgstr "" -#: part/models.py:112 +#: part/models.py:113 msgid "Parts may not be directly assigned to a structural category, but may be assigned to child categories." msgstr "" -#: part/models.py:121 +#: part/models.py:122 msgid "Default keywords" msgstr "" -#: part/models.py:122 +#: part/models.py:123 msgid "Default keywords for parts in this category" msgstr "此类别商品的默认关键字" -#: part/models.py:128 stock/models.py:87 stock/models.py:158 +#: part/models.py:129 stock/models.py:87 stock/models.py:158 #: templates/InvenTree/settings/settings_staff_js.html:456 msgid "Icon" msgstr "" -#: part/models.py:129 stock/models.py:159 +#: part/models.py:130 stock/models.py:159 msgid "Icon (optional)" msgstr "" -#: part/models.py:151 +#: part/models.py:152 msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:486 +#: part/models.py:487 #, fuzzy #| msgid "Print actions" msgid "Cannot delete this part as it is locked" msgstr "打印操作" -#: part/models.py:489 +#: part/models.py:490 #, fuzzy #| msgid "Print actions" msgid "Cannot delete this part as it is still active" msgstr "打印操作" -#: part/models.py:494 +#: part/models.py:495 msgid "Cannot delete this part as it is used in an assembly" msgstr "" -#: part/models.py:532 +#: part/models.py:533 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:580 part/models.py:587 +#: part/models.py:581 part/models.py:588 #, python-brace-format msgid "Part '{self}' cannot be used in BOM for '{parent}' (recursive)" msgstr "" -#: part/models.py:599 +#: part/models.py:600 #, python-brace-format msgid "Part '{parent}' is used in BOM for '{self}' (recursive)" msgstr "" -#: part/models.py:662 +#: part/models.py:663 #, fuzzy, python-brace-format #| msgid "IPN must match regex pattern {pat}" msgid "IPN must match regex pattern {pattern}" msgstr "IPN 必须匹配正则表达式 {pat}" -#: part/models.py:740 +#: part/models.py:671 +msgid "Part cannot be a revision of itself" +msgstr "" + +#: part/models.py:678 +msgid "Cannot make a revision of a part which is already a revision" +msgstr "" + +#: part/models.py:685 +#, fuzzy +#| msgid "Destination location not specified" +msgid "Revision code must be specified" +msgstr "目标位置未指定" + +#: part/models.py:692 +msgid "Revisions are only allowed for assembly parts" +msgstr "" + +#: part/models.py:699 +msgid "Cannot make a revision of a template part" +msgstr "" + +#: part/models.py:705 +#, fuzzy +#| msgid "Build output must point to the same build" +msgid "Parent part must point to the same template" +msgstr "生产产出必须指向相同的生产" + +#: part/models.py:784 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:841 +#: part/models.py:885 msgid "Duplicate IPN not allowed in part settings" msgstr "在商品设置中不允许重复的IPN" -#: part/models.py:851 +#: part/models.py:894 +#, fuzzy +#| msgid "Attachment with this filename already exists" +msgid "Duplicate part revision already exists." +msgstr "使用此文件名的附件已存在" + +#: part/models.py:904 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:866 +#: part/models.py:919 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:895 part/models.py:3992 +#: part/models.py:951 part/models.py:4064 msgid "Part name" msgstr "商品名称" -#: part/models.py:900 +#: part/models.py:956 msgid "Is Template" msgstr "" -#: part/models.py:901 +#: part/models.py:957 msgid "Is this part a template part?" msgstr "" -#: part/models.py:911 +#: part/models.py:967 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:919 +#: part/models.py:975 #, fuzzy #| msgid "Description (optional)" msgid "Part description (optional)" msgstr "描述 (可选)" -#: part/models.py:927 +#: part/models.py:983 msgid "Part keywords to improve visibility in search results" msgstr "提高搜索结果可见性的关键字" -#: part/models.py:937 +#: part/models.py:993 msgid "Part category" msgstr "商品类别" -#: part/models.py:952 +#: part/models.py:1008 msgid "Part revision or version number" msgstr "商品版本号" -#: part/models.py:977 +#: part/models.py:1018 +msgid "Is this part a revision of another part?" +msgstr "" + +#: part/models.py:1019 part/templates/part/part_base.html:277 +#, fuzzy +#| msgid "Part description" +msgid "Revision Of" +msgstr "商品描述" + +#: part/models.py:1043 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:1023 part/templates/part/part_base.html:376 +#: part/models.py:1089 part/templates/part/part_base.html:385 msgid "Default Supplier" msgstr "" -#: part/models.py:1024 +#: part/models.py:1090 msgid "Default supplier part" msgstr "默认供应商商品" -#: part/models.py:1031 +#: part/models.py:1097 msgid "Default Expiry" msgstr "" -#: part/models.py:1032 +#: part/models.py:1098 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:1041 +#: part/models.py:1107 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:1050 +#: part/models.py:1116 msgid "Units of measure for this part" msgstr "" -#: part/models.py:1057 +#: part/models.py:1123 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:1063 +#: part/models.py:1129 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:1069 +#: part/models.py:1135 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:1075 +#: part/models.py:1141 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:1081 +#: part/models.py:1147 msgid "Can this part be sold to customers?" msgstr "此商品可以销售给客户吗?" -#: part/models.py:1085 +#: part/models.py:1151 msgid "Is this part active?" msgstr "" -#: part/models.py:1090 templates/js/translated/part.js:818 +#: part/models.py:1156 templates/js/translated/part.js:820 #: templates/js/translated/table_filters.js:721 #, fuzzy #| msgid "Stock Item" msgid "Locked" msgstr "库存项" -#: part/models.py:1091 +#: part/models.py:1157 #, fuzzy #| msgid "Order cannot be cancelled" msgid "Locked parts cannot be edited" msgstr "无法取消订单" -#: part/models.py:1097 +#: part/models.py:1163 msgid "Is this a virtual part, such as a software product or license?" msgstr "这是一个虚拟商品,如软件产品或许可证吗?" -#: part/models.py:1103 +#: part/models.py:1169 msgid "BOM checksum" msgstr "" -#: part/models.py:1104 +#: part/models.py:1170 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:1112 +#: part/models.py:1178 msgid "BOM checked by" msgstr "" -#: part/models.py:1117 +#: part/models.py:1183 msgid "BOM checked date" msgstr "" -#: part/models.py:1133 +#: part/models.py:1199 msgid "Creation User" msgstr "新建用户" -#: part/models.py:1143 +#: part/models.py:1209 #, fuzzy #| msgid "User or group responsible for this order" msgid "Owner responsible for this part" msgstr "负责此订单的用户或群组" -#: part/models.py:1148 part/templates/part/part_base.html:339 +#: part/models.py:1214 part/templates/part/part_base.html:348 #: stock/templates/stock/item_base.html:451 -#: templates/js/translated/part.js:2474 +#: templates/js/translated/part.js:2490 msgid "Last Stocktake" msgstr "" -#: part/models.py:2021 +#: part/models.py:2087 msgid "Sell multiple" msgstr "" -#: part/models.py:3012 +#: part/models.py:3078 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:3028 +#: part/models.py:3094 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:3029 +#: part/models.py:3095 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:3035 +#: part/models.py:3101 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:3036 +#: part/models.py:3102 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:3042 +#: part/models.py:3108 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:3043 +#: part/models.py:3109 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:3049 +#: part/models.py:3115 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:3050 +#: part/models.py:3116 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:3056 +#: part/models.py:3122 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:3057 +#: part/models.py:3123 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:3063 +#: part/models.py:3129 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:3064 +#: part/models.py:3130 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:3070 +#: part/models.py:3136 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:3071 +#: part/models.py:3137 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:3077 +#: part/models.py:3143 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:3078 +#: part/models.py:3144 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:3084 +#: part/models.py:3150 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:3085 +#: part/models.py:3151 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:3091 +#: part/models.py:3157 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:3092 +#: part/models.py:3158 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:3099 +#: part/models.py:3165 msgid "Override minimum cost" msgstr "" -#: part/models.py:3106 +#: part/models.py:3172 msgid "Override maximum cost" msgstr "" -#: part/models.py:3113 +#: part/models.py:3179 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:3120 +#: part/models.py:3186 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:3126 +#: part/models.py:3192 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:3127 +#: part/models.py:3193 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:3133 +#: part/models.py:3199 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:3134 +#: part/models.py:3200 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:3140 +#: part/models.py:3206 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:3141 +#: part/models.py:3207 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:3147 +#: part/models.py:3213 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:3148 +#: part/models.py:3214 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3167 +#: part/models.py:3233 msgid "Part for stocktake" msgstr "" -#: part/models.py:3172 +#: part/models.py:3238 msgid "Item Count" msgstr "" -#: part/models.py:3173 +#: part/models.py:3239 msgid "Number of individual stock entries at time of stocktake" msgstr "" -#: part/models.py:3181 +#: part/models.py:3247 msgid "Total available stock at time of stocktake" msgstr "" -#: part/models.py:3185 part/models.py:3268 +#: part/models.py:3251 part/models.py:3334 #: part/templates/part/part_scheduling.html:13 #: report/templates/report/inventree_test_report.html:106 #: templates/InvenTree/settings/plugin_settings.html:37 #: templates/InvenTree/settings/settings_staff_js.html:540 -#: templates/js/translated/part.js:1089 templates/js/translated/pricing.js:826 +#: templates/js/translated/part.js:1091 templates/js/translated/pricing.js:826 #: templates/js/translated/pricing.js:950 -#: templates/js/translated/purchase_order.js:1731 -#: templates/js/translated/stock.js:2821 +#: templates/js/translated/purchase_order.js:1802 +#: templates/js/translated/stock.js:2902 msgid "Date" msgstr "" -#: part/models.py:3186 +#: part/models.py:3252 msgid "Date stocktake was performed" msgstr "" -#: part/models.py:3194 +#: part/models.py:3260 msgid "Additional notes" msgstr "" -#: part/models.py:3204 +#: part/models.py:3270 msgid "User who performed this stocktake" msgstr "" -#: part/models.py:3210 +#: part/models.py:3276 msgid "Minimum Stock Cost" msgstr "" -#: part/models.py:3211 +#: part/models.py:3277 msgid "Estimated minimum cost of stock on hand" msgstr "" -#: part/models.py:3217 +#: part/models.py:3283 msgid "Maximum Stock Cost" msgstr "" -#: part/models.py:3218 +#: part/models.py:3284 msgid "Estimated maximum cost of stock on hand" msgstr "" -#: part/models.py:3274 templates/InvenTree/settings/settings_staff_js.html:529 +#: part/models.py:3340 templates/InvenTree/settings/settings_staff_js.html:529 msgid "Report" msgstr "" -#: part/models.py:3275 +#: part/models.py:3341 msgid "Stocktake report file (generated internally)" msgstr "" -#: part/models.py:3280 templates/InvenTree/settings/settings_staff_js.html:536 +#: part/models.py:3346 templates/InvenTree/settings/settings_staff_js.html:536 msgid "Part Count" msgstr "" -#: part/models.py:3281 +#: part/models.py:3347 msgid "Number of parts covered by stocktake" msgstr "" -#: part/models.py:3291 +#: part/models.py:3357 msgid "User who requested this stocktake report" msgstr "" -#: part/models.py:3301 +#: part/models.py:3367 #, fuzzy #| msgid "Sale Price" msgid "Part Sale Price Break" msgstr "销售价格" -#: part/models.py:3413 +#: part/models.py:3479 #, fuzzy #| msgid "Parameter Template" msgid "Part Test Template" msgstr "参数模板" -#: part/models.py:3439 +#: part/models.py:3505 msgid "Invalid template name - must include at least one alphanumeric character" msgstr "" -#: part/models.py:3460 part/models.py:3629 +#: part/models.py:3526 part/models.py:3695 #, fuzzy #| msgid "Key string must be unique" msgid "Choices must be unique" msgstr "关键字必须是唯一的" -#: part/models.py:3471 +#: part/models.py:3537 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3482 +#: part/models.py:3548 #, fuzzy #| msgid "Attachment with this filename already exists" msgid "Test template with the same key already exists for part" msgstr "使用此文件名的附件已存在" -#: part/models.py:3499 templates/js/translated/part.js:2883 +#: part/models.py:3565 templates/js/translated/part.js:2899 msgid "Test Name" msgstr "" -#: part/models.py:3500 +#: part/models.py:3566 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3506 +#: part/models.py:3572 msgid "Test Key" msgstr "" -#: part/models.py:3507 +#: part/models.py:3573 msgid "Simplified key for the test" msgstr "" -#: part/models.py:3514 +#: part/models.py:3580 msgid "Test Description" msgstr "" -#: part/models.py:3515 +#: part/models.py:3581 msgid "Enter description for this test" msgstr "" -#: part/models.py:3519 report/models.py:209 -#: templates/js/translated/part.js:2904 +#: part/models.py:3585 report/models.py:209 +#: templates/js/translated/part.js:2920 #: templates/js/translated/table_filters.js:481 msgid "Enabled" msgstr "已启用" -#: part/models.py:3519 +#: part/models.py:3585 msgid "Is this test enabled?" msgstr "" -#: part/models.py:3524 templates/js/translated/part.js:2912 +#: part/models.py:3590 templates/js/translated/part.js:2928 #: templates/js/translated/table_filters.js:477 msgid "Required" msgstr "" -#: part/models.py:3525 +#: part/models.py:3591 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3530 templates/js/translated/part.js:2920 +#: part/models.py:3596 templates/js/translated/part.js:2936 msgid "Requires Value" msgstr "" -#: part/models.py:3531 +#: part/models.py:3597 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3536 templates/js/translated/part.js:2927 +#: part/models.py:3602 templates/js/translated/part.js:2943 msgid "Requires Attachment" msgstr "" -#: part/models.py:3538 +#: part/models.py:3604 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3544 part/models.py:3688 templates/js/translated/part.js:1640 +#: part/models.py:3610 part/models.py:3754 templates/js/translated/part.js:1642 msgid "Choices" msgstr "" -#: part/models.py:3545 +#: part/models.py:3611 msgid "Valid choices for this test (comma-separated)" msgstr "" -#: part/models.py:3577 +#: part/models.py:3643 #, fuzzy #| msgid "Part Parameter Templates" msgid "Part Parameter Template" msgstr "商品参数模板" -#: part/models.py:3604 +#: part/models.py:3670 msgid "Checkbox parameters cannot have units" msgstr "" -#: part/models.py:3609 +#: part/models.py:3675 msgid "Checkbox parameters cannot have choices" msgstr "" -#: part/models.py:3646 +#: part/models.py:3712 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3661 +#: part/models.py:3727 msgid "Parameter Name" msgstr "" -#: part/models.py:3668 +#: part/models.py:3734 msgid "Physical units for this parameter" msgstr "" -#: part/models.py:3676 +#: part/models.py:3742 msgid "Parameter description" msgstr "" -#: part/models.py:3682 templates/js/translated/part.js:1631 +#: part/models.py:3748 templates/js/translated/part.js:1633 #: templates/js/translated/table_filters.js:830 msgid "Checkbox" msgstr "" -#: part/models.py:3683 +#: part/models.py:3749 msgid "Is this parameter a checkbox?" msgstr "" -#: part/models.py:3689 +#: part/models.py:3755 msgid "Valid choices for this parameter (comma-separated)" msgstr "" -#: part/models.py:3723 +#: part/models.py:3789 #, fuzzy #| msgid "Part Parameters" msgid "Part Parameter" msgstr "商品参数" -#: part/models.py:3749 +#: part/models.py:3815 msgid "Parameter cannot be modified - part is locked" msgstr "" -#: part/models.py:3785 +#: part/models.py:3851 #, fuzzy #| msgid "Invalid choice for parent build" msgid "Invalid choice for parameter value" msgstr "上级生产选项无效" -#: part/models.py:3828 +#: part/models.py:3900 msgid "Parent Part" msgstr "" -#: part/models.py:3836 part/models.py:3944 part/models.py:3945 +#: part/models.py:3908 part/models.py:4016 part/models.py:4017 #: templates/InvenTree/settings/settings_staff_js.html:295 msgid "Parameter Template" msgstr "参数模板" -#: part/models.py:3842 +#: part/models.py:3914 msgid "Parameter Value" msgstr "" -#: part/models.py:3892 +#: part/models.py:3964 #, fuzzy #| msgid "Create Category Parameter Template" msgid "Part Category Parameter Template" msgstr "创建类别参数模板" -#: part/models.py:3951 templates/InvenTree/settings/settings_staff_js.html:304 +#: part/models.py:4023 templates/InvenTree/settings/settings_staff_js.html:304 msgid "Default Value" msgstr "默认值" -#: part/models.py:3952 +#: part/models.py:4024 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3990 +#: part/models.py:4062 msgid "Part ID or part name" msgstr "" -#: part/models.py:3991 +#: part/models.py:4063 msgid "Unique part ID value" msgstr "" -#: part/models.py:3993 +#: part/models.py:4065 msgid "Part IPN value" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "Level" msgstr "" -#: part/models.py:3994 +#: part/models.py:4066 msgid "BOM level" msgstr "" -#: part/models.py:4105 +#: part/models.py:4177 msgid "BOM item cannot be modified - assembly is locked" msgstr "" -#: part/models.py:4112 +#: part/models.py:4184 msgid "BOM item cannot be modified - variant assembly is locked" msgstr "" -#: part/models.py:4122 +#: part/models.py:4194 msgid "Select parent part" msgstr "" -#: part/models.py:4132 +#: part/models.py:4204 msgid "Sub part" msgstr "" -#: part/models.py:4133 +#: part/models.py:4205 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:4144 +#: part/models.py:4216 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:4150 +#: part/models.py:4222 msgid "This BOM item is optional" msgstr "" -#: part/models.py:4156 +#: part/models.py:4228 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:4163 part/templates/part/upload_bom.html:55 +#: part/models.py:4235 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:4164 +#: part/models.py:4236 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:4171 +#: part/models.py:4243 msgid "BOM item reference" msgstr "" -#: part/models.py:4179 +#: part/models.py:4251 msgid "BOM item notes" msgstr "" -#: part/models.py:4185 +#: part/models.py:4257 msgid "Checksum" msgstr "" -#: part/models.py:4186 +#: part/models.py:4258 msgid "BOM line checksum" msgstr "" -#: part/models.py:4191 templates/js/translated/table_filters.js:174 +#: part/models.py:4263 templates/js/translated/table_filters.js:174 msgid "Validated" msgstr "" -#: part/models.py:4192 +#: part/models.py:4264 #, fuzzy #| msgid "Some stock items have been overallocated" msgid "This BOM item has been validated" msgstr "一些库存项已被过度分配" -#: part/models.py:4197 part/templates/part/upload_bom.html:57 +#: part/models.py:4269 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1054 #: templates/js/translated/table_filters.js:178 #: templates/js/translated/table_filters.js:211 msgid "Gets inherited" msgstr "" -#: part/models.py:4198 +#: part/models.py:4270 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:4203 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1046 -msgid "Allow Variants" -msgstr "" - -#: part/models.py:4204 +#: part/models.py:4276 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:4289 stock/models.py:663 +#: part/models.py:4361 stock/models.py:663 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:4299 part/models.py:4301 +#: part/models.py:4371 part/models.py:4373 msgid "Sub part must be specified" msgstr "" -#: part/models.py:4439 +#: part/models.py:4511 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:4460 +#: part/models.py:4532 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:4473 +#: part/models.py:4545 msgid "Parent BOM item" msgstr "" -#: part/models.py:4481 +#: part/models.py:4553 msgid "Substitute part" msgstr "" -#: part/models.py:4497 +#: part/models.py:4569 msgid "Part 1" msgstr "" -#: part/models.py:4505 +#: part/models.py:4577 msgid "Part 2" msgstr "" -#: part/models.py:4506 +#: part/models.py:4578 msgid "Select Related Part" msgstr "" -#: part/models.py:4525 +#: part/models.py:4597 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:4530 +#: part/models.py:4602 msgid "Duplicate relationship already exists" msgstr "" @@ -7606,7 +7776,7 @@ msgstr "" msgid "Parent Category" msgstr "商品类别" -#: part/serializers.py:125 templates/js/translated/part.js:308 +#: part/serializers.py:125 templates/js/translated/part.js:310 msgid "Parent part category" msgstr "" @@ -7624,7 +7794,7 @@ msgstr "" msgid "Number of results recorded against this template" msgstr "" -#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:608 +#: part/serializers.py:217 part/serializers.py:235 stock/serializers.py:613 msgid "Purchase currency of this stock item" msgstr "" @@ -7632,323 +7802,334 @@ msgstr "" msgid "Number of parts using this template" msgstr "" -#: part/serializers.py:410 +#: part/serializers.py:412 #, fuzzy #| msgid "Rejected" msgid "No parts selected" msgstr "已拒绝" -#: part/serializers.py:420 +#: part/serializers.py:422 #, fuzzy #| msgid "Set category" msgid "Select category" msgstr "设置类别" -#: part/serializers.py:455 +#: part/serializers.py:457 msgid "Original Part" msgstr "" -#: part/serializers.py:456 +#: part/serializers.py:458 msgid "Select original part to duplicate" msgstr "" -#: part/serializers.py:461 +#: part/serializers.py:463 msgid "Copy Image" msgstr "" -#: part/serializers.py:462 +#: part/serializers.py:464 msgid "Copy image from original part" msgstr "" -#: part/serializers.py:468 part/templates/part/detail.html:277 +#: part/serializers.py:470 part/templates/part/detail.html:277 msgid "Copy BOM" msgstr "" -#: part/serializers.py:469 +#: part/serializers.py:471 msgid "Copy bill of materials from original part" msgstr "" -#: part/serializers.py:475 +#: part/serializers.py:477 msgid "Copy Parameters" msgstr "" -#: part/serializers.py:476 +#: part/serializers.py:478 msgid "Copy parameter data from original part" msgstr "" -#: part/serializers.py:482 +#: part/serializers.py:484 #, fuzzy #| msgid "Company Notes" msgid "Copy Notes" msgstr "公司备注" -#: part/serializers.py:483 +#: part/serializers.py:485 msgid "Copy notes from original part" msgstr "" -#: part/serializers.py:501 +#: part/serializers.py:503 msgid "Initial Stock Quantity" msgstr "" -#: part/serializers.py:503 +#: part/serializers.py:505 msgid "Specify initial stock quantity for this Part. If quantity is zero, no stock is added." msgstr "" -#: part/serializers.py:510 +#: part/serializers.py:512 msgid "Initial Stock Location" msgstr "" -#: part/serializers.py:511 +#: part/serializers.py:513 msgid "Specify initial stock location for this Part" msgstr "" -#: part/serializers.py:528 +#: part/serializers.py:530 msgid "Select supplier (or leave blank to skip)" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:546 msgid "Select manufacturer (or leave blank to skip)" msgstr "" -#: part/serializers.py:554 +#: part/serializers.py:556 msgid "Manufacturer part number" msgstr "" -#: part/serializers.py:561 +#: part/serializers.py:563 msgid "Selected company is not a valid supplier" msgstr "" -#: part/serializers.py:570 +#: part/serializers.py:572 msgid "Selected company is not a valid manufacturer" msgstr "" -#: part/serializers.py:581 +#: part/serializers.py:583 msgid "Manufacturer part matching this MPN already exists" msgstr "" -#: part/serializers.py:588 +#: part/serializers.py:590 msgid "Supplier part matching this SKU already exists" msgstr "" -#: part/serializers.py:864 +#: part/serializers.py:893 +#, fuzzy +#| msgid "Part description" +msgid "Revisions" +msgstr "商品描述" + +#: part/serializers.py:898 #, fuzzy #| msgid "Unallocate Stock" msgid "Unallocated Stock" msgstr "未分配库存" -#: part/serializers.py:867 +#: part/serializers.py:901 #, fuzzy #| msgid "Part Stock" msgid "Variant Stock" msgstr "商品库存" -#: part/serializers.py:897 part/templates/part/copy_part.html:9 -#: templates/js/translated/part.js:471 +#: part/serializers.py:931 part/templates/part/copy_part.html:9 +#: templates/js/translated/part.js:473 msgid "Duplicate Part" msgstr "复制部件" -#: part/serializers.py:898 +#: part/serializers.py:932 msgid "Copy initial data from another Part" msgstr "" -#: part/serializers.py:904 templates/js/translated/part.js:102 +#: part/serializers.py:938 templates/js/translated/part.js:102 msgid "Initial Stock" msgstr "" -#: part/serializers.py:905 +#: part/serializers.py:939 msgid "Create Part with initial stock quantity" msgstr "" -#: part/serializers.py:911 +#: part/serializers.py:945 msgid "Supplier Information" msgstr "" -#: part/serializers.py:912 +#: part/serializers.py:946 msgid "Add initial supplier information for this part" msgstr "" -#: part/serializers.py:920 +#: part/serializers.py:954 msgid "Copy Category Parameters" msgstr "复制类别参数" -#: part/serializers.py:921 +#: part/serializers.py:955 msgid "Copy parameter templates from selected part category" msgstr "" -#: part/serializers.py:926 +#: part/serializers.py:960 #, fuzzy #| msgid "Existing barcode found" msgid "Existing Image" msgstr "发现现有条码" -#: part/serializers.py:927 +#: part/serializers.py:961 msgid "Filename of an existing part image" msgstr "" -#: part/serializers.py:944 +#: part/serializers.py:978 #, fuzzy #| msgid "Part image not found" msgid "Image file does not exist" msgstr "未找到商品图像" -#: part/serializers.py:1150 +#: part/serializers.py:1184 msgid "Limit stocktake report to a particular part, and any variant parts" msgstr "" -#: part/serializers.py:1160 +#: part/serializers.py:1194 msgid "Limit stocktake report to a particular part category, and any child categories" msgstr "" -#: part/serializers.py:1170 +#: part/serializers.py:1204 msgid "Limit stocktake report to a particular stock location, and any child locations" msgstr "" -#: part/serializers.py:1176 +#: part/serializers.py:1210 msgid "Exclude External Stock" msgstr "" -#: part/serializers.py:1177 +#: part/serializers.py:1211 #, fuzzy #| msgid "Exclude stock items from this selected location" msgid "Exclude stock items in external locations" msgstr "从该选定的仓储地点排除库存项" -#: part/serializers.py:1182 +#: part/serializers.py:1216 msgid "Generate Report" msgstr "" -#: part/serializers.py:1183 +#: part/serializers.py:1217 msgid "Generate report file containing calculated stocktake data" msgstr "" -#: part/serializers.py:1188 +#: part/serializers.py:1222 msgid "Update Parts" msgstr "" -#: part/serializers.py:1189 +#: part/serializers.py:1223 msgid "Update specified parts with calculated stocktake data" msgstr "" -#: part/serializers.py:1197 +#: part/serializers.py:1231 msgid "Stocktake functionality is not enabled" msgstr "" -#: part/serializers.py:1303 +#: part/serializers.py:1337 msgid "Override calculated value for minimum price" msgstr "" -#: part/serializers.py:1310 +#: part/serializers.py:1344 #, fuzzy #| msgid "Uses default currency" msgid "Minimum price currency" msgstr "使用默认货币" -#: part/serializers.py:1318 +#: part/serializers.py:1352 msgid "Override calculated value for maximum price" msgstr "" -#: part/serializers.py:1325 +#: part/serializers.py:1359 #, fuzzy #| msgid "Uses default currency" msgid "Maximum price currency" msgstr "使用默认货币" -#: part/serializers.py:1354 +#: part/serializers.py:1388 msgid "Update" msgstr "" -#: part/serializers.py:1355 +#: part/serializers.py:1389 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:1378 +#: part/serializers.py:1412 #, python-brace-format msgid "Could not convert from provided currencies to {default_currency}" msgstr "" -#: part/serializers.py:1385 +#: part/serializers.py:1419 msgid "Minimum price must not be greater than maximum price" msgstr "" -#: part/serializers.py:1388 +#: part/serializers.py:1422 msgid "Maximum price must not be less than minimum price" msgstr "" -#: part/serializers.py:1759 +#: part/serializers.py:1575 part/templates/part/part_base.html:235 +#: templates/js/translated/bom.js:1219 +msgid "Can Build" +msgstr "" + +#: part/serializers.py:1813 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:1767 +#: part/serializers.py:1821 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:1768 +#: part/serializers.py:1822 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:1773 +#: part/serializers.py:1827 msgid "Include Inherited" msgstr "" -#: part/serializers.py:1774 +#: part/serializers.py:1828 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:1779 +#: part/serializers.py:1833 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:1780 +#: part/serializers.py:1834 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:1785 +#: part/serializers.py:1839 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:1786 +#: part/serializers.py:1840 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:1823 +#: part/serializers.py:1877 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:1824 +#: part/serializers.py:1878 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:1856 +#: part/serializers.py:1910 msgid "No part column specified" msgstr "" -#: part/serializers.py:1900 +#: part/serializers.py:1954 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:1903 +#: part/serializers.py:1957 msgid "No matching part found" msgstr "" -#: part/serializers.py:1906 +#: part/serializers.py:1960 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1915 +#: part/serializers.py:1969 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1923 +#: part/serializers.py:1977 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1946 +#: part/serializers.py:2000 msgid "At least one BOM item is required" msgstr "" -#: part/stocktake.py:225 templates/js/translated/part.js:1070 -#: templates/js/translated/part.js:1825 templates/js/translated/part.js:1881 -#: templates/js/translated/purchase_order.js:2084 +#: part/stocktake.py:225 templates/js/translated/part.js:1072 +#: templates/js/translated/part.js:1827 templates/js/translated/part.js:1883 +#: templates/js/translated/purchase_order.js:2155 msgid "Total Quantity" msgstr "" @@ -8104,7 +8285,7 @@ msgstr "" #: part/templates/part/detail.html:67 part/templates/part/part_sidebar.html:50 #: stock/admin.py:255 templates/InvenTree/settings/part_stocktake.html:30 #: templates/InvenTree/settings/sidebar.html:53 -#: templates/js/translated/stock.js:2216 users/models.py:204 +#: templates/js/translated/stock.js:2297 users/models.py:204 msgid "Stocktake" msgstr "" @@ -8291,7 +8472,7 @@ msgstr "清点商品库存" msgid "Transfer part stock" msgstr "" -#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2296 +#: part/templates/part/part_base.html:91 templates/js/translated/part.js:2299 msgid "Part actions" msgstr "" @@ -8342,7 +8523,7 @@ msgid "Part is virtual (not a physical part)" msgstr "商品是虚拟的(不是实体零件)" #: part/templates/part/part_base.html:163 -#: part/templates/part/part_base.html:681 +#: part/templates/part/part_base.html:690 msgid "Show Part Details" msgstr "" @@ -8356,51 +8537,47 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:235 templates/js/translated/bom.js:1219 -msgid "Can Build" -msgstr "" - -#: part/templates/part/part_base.html:291 +#: part/templates/part/part_base.html:300 msgid "Minimum stock level" msgstr "" -#: part/templates/part/part_base.html:322 templates/js/translated/bom.js:1071 -#: templates/js/translated/part.js:1268 templates/js/translated/part.js:2447 +#: part/templates/part/part_base.html:331 templates/js/translated/bom.js:1071 +#: templates/js/translated/part.js:1270 templates/js/translated/part.js:2463 #: templates/js/translated/pricing.js:391 #: templates/js/translated/pricing.js:1054 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:352 +#: part/templates/part/part_base.html:361 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:356 +#: part/templates/part/part_base.html:365 #: stock/templates/stock/item_base.html:322 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:444 +#: part/templates/part/part_base.html:453 msgid "Part QR Code" msgstr "商品二维码" -#: part/templates/part/part_base.html:461 +#: part/templates/part/part_base.html:470 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:520 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:528 +#: part/templates/part/part_base.html:537 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:579 +#: part/templates/part/part_base.html:588 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:675 +#: part/templates/part/part_base.html:684 msgid "Hide Part Details" msgstr "" @@ -8458,9 +8635,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 #: templates/InvenTree/settings/sidebar.html:51 -#: templates/js/translated/part.js:1246 templates/js/translated/part.js:2149 -#: templates/js/translated/part.js:2395 templates/js/translated/stock.js:1059 -#: templates/js/translated/stock.js:2070 templates/navbar.html:31 +#: templates/js/translated/part.js:1248 templates/js/translated/part.js:2151 +#: templates/js/translated/part.js:2411 templates/js/translated/stock.js:1062 +#: templates/js/translated/stock.js:2151 templates/navbar.html:31 msgid "Stock" msgstr "库存" @@ -8508,7 +8685,7 @@ msgstr "编辑" #: stock/templates/stock/item_base.html:446 #: templates/js/translated/company.js:1703 #: templates/js/translated/company.js:1713 -#: templates/js/translated/stock.js:2246 +#: templates/js/translated/stock.js:2327 msgid "Last Updated" msgstr "" @@ -8585,8 +8762,8 @@ msgstr "商品价格" #: part/templates/part/stock_count.html:7 #: templates/js/translated/model_renderers.js:227 -#: templates/js/translated/part.js:704 templates/js/translated/part.js:2144 -#: templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:706 templates/js/translated/part.js:2146 +#: templates/js/translated/part.js:2148 msgid "No Stock" msgstr "" @@ -8686,7 +8863,7 @@ msgid "Match found for barcode data" msgstr "找到匹配条形码数据" #: plugin/base/barcodes/api.py:154 -#: templates/js/translated/purchase_order.js:1406 +#: templates/js/translated/purchase_order.js:1469 msgid "Barcode matches existing item" msgstr "" @@ -8748,7 +8925,7 @@ msgstr "" msgid "Stock item does not match line item" msgstr "在BOM中找不到选定的库存项" -#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2590 +#: plugin/base/barcodes/api.py:550 templates/js/translated/build.js:2783 #: templates/js/translated/sales_order.js:1953 msgid "Insufficient stock available" msgstr "" @@ -8910,7 +9087,7 @@ msgstr "" #: plugin/builtin/integration/currency_exchange.py:21 #: plugin/builtin/labels/inventree_label.py:22 #: plugin/builtin/labels/inventree_machine.py:64 -#: plugin/builtin/labels/label_sheet.py:63 +#: plugin/builtin/labels/label_sheet.py:64 #: plugin/builtin/suppliers/digikey.py:19 plugin/builtin/suppliers/lcsc.py:21 #: plugin/builtin/suppliers/mouser.py:19 plugin/builtin/suppliers/tme.py:21 msgid "InvenTree contributors" @@ -8975,12 +9152,14 @@ msgid "Provides native support for printing PDF labels" msgstr "打印标签前必须选择商品" #: plugin/builtin/labels/inventree_label.py:28 +#: plugin/builtin/labels/label_sheet.py:70 #, fuzzy #| msgid "Debug Mode" msgid "Debug mode" msgstr "调试模式" #: plugin/builtin/labels/inventree_label.py:29 +#: plugin/builtin/labels/label_sheet.py:71 msgid "Enable debug mode - returns raw HTML instead of PDF" msgstr "" @@ -8994,59 +9173,59 @@ msgstr "" msgid "Provides support for printing using a machine" msgstr "打印标签前必须选择商品" -#: plugin/builtin/labels/inventree_machine.py:151 +#: plugin/builtin/labels/inventree_machine.py:149 msgid "last used" msgstr "" -#: plugin/builtin/labels/inventree_machine.py:168 +#: plugin/builtin/labels/inventree_machine.py:166 msgid "Options" msgstr "选项" -#: plugin/builtin/labels/label_sheet.py:29 +#: plugin/builtin/labels/label_sheet.py:30 #, fuzzy #| msgid "Default page size for PDF reports" msgid "Page size for the label sheet" msgstr "PDF 报表默认页面大小" -#: plugin/builtin/labels/label_sheet.py:34 +#: plugin/builtin/labels/label_sheet.py:35 #, fuzzy #| msgid "Label" msgid "Skip Labels" msgstr "标签" -#: plugin/builtin/labels/label_sheet.py:35 +#: plugin/builtin/labels/label_sheet.py:36 msgid "Skip this number of labels when printing label sheets" msgstr "" -#: plugin/builtin/labels/label_sheet.py:41 +#: plugin/builtin/labels/label_sheet.py:42 msgid "Border" msgstr "" -#: plugin/builtin/labels/label_sheet.py:42 +#: plugin/builtin/labels/label_sheet.py:43 msgid "Print a border around each label" msgstr "" -#: plugin/builtin/labels/label_sheet.py:47 report/models.py:308 +#: plugin/builtin/labels/label_sheet.py:48 report/models.py:308 msgid "Landscape" msgstr "" -#: plugin/builtin/labels/label_sheet.py:48 +#: plugin/builtin/labels/label_sheet.py:49 msgid "Print the label sheet in landscape mode" msgstr "" -#: plugin/builtin/labels/label_sheet.py:60 +#: plugin/builtin/labels/label_sheet.py:61 msgid "InvenTree Label Sheet Printer" msgstr "" -#: plugin/builtin/labels/label_sheet.py:61 +#: plugin/builtin/labels/label_sheet.py:62 msgid "Arrays multiple labels onto a single sheet" msgstr "" -#: plugin/builtin/labels/label_sheet.py:99 +#: plugin/builtin/labels/label_sheet.py:107 msgid "Label is too large for page size" msgstr "" -#: plugin/builtin/labels/label_sheet.py:133 +#: plugin/builtin/labels/label_sheet.py:141 msgid "No labels were generated" msgstr "" @@ -9369,7 +9548,7 @@ msgid "No valid objects provided to template" msgstr "没有为模板提供有效对象" #: report/api.py:103 report/models.py:439 report/serializers.py:98 -#: report/serializers.py:148 templates/js/translated/purchase_order.js:1747 +#: report/serializers.py:148 templates/js/translated/purchase_order.js:1818 #: templates/js/translated/return_order.js:353 #: templates/js/translated/sales_order.js:887 #: templates/js/translated/sales_order.js:1047 @@ -9525,7 +9704,7 @@ msgstr "要生产的项目数量" msgid "Report generation is complete" msgstr "" -#: report/models.py:449 templates/js/translated/build.js:2177 +#: report/models.py:449 templates/js/translated/build.js:2352 msgid "Progress" msgstr "" @@ -9647,7 +9826,7 @@ msgstr "" #: templates/js/translated/order.js:316 templates/js/translated/pricing.js:527 #: templates/js/translated/pricing.js:596 #: templates/js/translated/pricing.js:834 -#: templates/js/translated/purchase_order.js:2115 +#: templates/js/translated/purchase_order.js:2186 #: templates/js/translated/sales_order.js:1873 msgid "Unit Price" msgstr "单价" @@ -9662,26 +9841,11 @@ msgstr "额外的生产备注" #: report/templates/report/inventree_purchase_order_report.html:72 #: report/templates/report/inventree_sales_order_report.html:72 -#: templates/js/translated/purchase_order.js:2017 +#: templates/js/translated/purchase_order.js:2088 #: templates/js/translated/sales_order.js:1842 msgid "Total" msgstr "" -#: report/templates/report/inventree_return_order_report.html:25 -#: report/templates/report/inventree_test_report.html:88 stock/models.py:825 -#: stock/serializers.py:151 stock/templates/stock/item_base.html:311 -#: templates/js/translated/build.js:519 templates/js/translated/build.js:1367 -#: templates/js/translated/build.js:2355 -#: templates/js/translated/model_renderers.js:230 -#: templates/js/translated/return_order.js:539 -#: templates/js/translated/return_order.js:723 -#: templates/js/translated/sales_order.js:315 -#: templates/js/translated/sales_order.js:1647 -#: templates/js/translated/sales_order.js:1732 -#: templates/js/translated/stock.js:596 -msgid "Serial Number" -msgstr "序列号" - #: report/templates/report/inventree_stock_location_report.html:97 #, fuzzy #| msgid "Stock item created" @@ -9697,11 +9861,11 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report.html:102 -#: templates/js/translated/stock.js:1495 +#: templates/js/translated/stock.js:1576 msgid "Test" msgstr "" -#: report/templates/report/inventree_test_report.html:103 stock/models.py:2457 +#: report/templates/report/inventree_test_report.html:103 stock/models.py:2459 msgid "Result" msgstr "" @@ -9724,13 +9888,13 @@ msgid "No result" msgstr "" #: report/templates/report/inventree_test_report.html:153 -#: stock/serializers.py:591 stock/templates/stock/stock_sidebar.html:16 +#: stock/serializers.py:596 stock/templates/stock/stock_sidebar.html:16 msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report.html:167 stock/admin.py:161 -#: templates/js/translated/stock.js:700 templates/js/translated/stock.js:871 -#: templates/js/translated/stock.js:3110 +#: templates/js/translated/stock.js:701 templates/js/translated/stock.js:872 +#: templates/js/translated/stock.js:3191 msgid "Serial" msgstr "" @@ -9793,7 +9957,7 @@ msgstr "" msgid "Customer ID" msgstr "" -#: stock/admin.py:205 stock/models.py:805 +#: stock/admin.py:205 stock/models.py:803 #: stock/templates/stock/item_base.html:354 msgid "Installed In" msgstr "" @@ -9820,9 +9984,9 @@ msgstr "" msgid "Delete on Deplete" msgstr "删除模板" -#: stock/admin.py:260 stock/models.py:899 +#: stock/admin.py:260 stock/models.py:897 #: stock/templates/stock/item_base.html:433 -#: templates/js/translated/stock.js:2230 users/models.py:124 +#: templates/js/translated/stock.js:2311 users/models.py:124 msgid "Expiry Date" msgstr "" @@ -9842,7 +10006,7 @@ msgstr "删除仓储地" msgid "Include sub-locations in filtered results" msgstr "" -#: stock/api.py:369 stock/serializers.py:1148 +#: stock/api.py:369 stock/serializers.py:1153 #, fuzzy #| msgid "Print actions" msgid "Parent Location" @@ -9872,7 +10036,7 @@ msgstr "" msgid "Expiry date after" msgstr "" -#: stock/api.py:842 stock/serializers.py:596 +#: stock/api.py:842 stock/serializers.py:601 #: stock/templates/stock/item_base.html:439 #: templates/js/translated/table_filters.js:441 msgid "Stale" @@ -9914,7 +10078,7 @@ msgstr "仓储地点" msgid "Default icon for all locations that have no icon set (optional)" msgstr "" -#: stock/models.py:125 stock/models.py:787 +#: stock/models.py:125 stock/models.py:785 #: stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" @@ -9926,12 +10090,12 @@ msgstr "仓储地点" msgid "Stock Locations" msgstr "仓储地点" -#: stock/models.py:168 stock/models.py:948 +#: stock/models.py:168 stock/models.py:946 #: stock/templates/stock/item_base.html:247 msgid "Owner" msgstr "" -#: stock/models.py:169 stock/models.py:949 +#: stock/models.py:169 stock/models.py:947 msgid "Select Owner" msgstr "" @@ -9939,7 +10103,7 @@ msgstr "" msgid "Stock items may not be directly located into a structural stock locations, but may be located to child locations." msgstr "" -#: stock/models.py:184 templates/js/translated/stock.js:2781 +#: stock/models.py:184 templates/js/translated/stock.js:2862 #: templates/js/translated/table_filters.js:243 msgid "External" msgstr "" @@ -9948,7 +10112,7 @@ msgstr "" msgid "This is an external stock location" msgstr "" -#: stock/models.py:191 templates/js/translated/stock.js:2790 +#: stock/models.py:191 templates/js/translated/stock.js:2871 #: templates/js/translated/table_filters.js:246 #, fuzzy #| msgid "Location" @@ -9969,7 +10133,7 @@ msgstr "" msgid "Stock items cannot be located into structural stock locations!" msgstr "" -#: stock/models.py:669 stock/serializers.py:477 +#: stock/models.py:669 stock/serializers.py:480 msgid "Stock item cannot be created for virtual parts" msgstr "" @@ -9987,255 +10151,255 @@ msgstr "" msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:723 +#: stock/models.py:721 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:728 +#: stock/models.py:726 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:741 +#: stock/models.py:739 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:757 +#: stock/models.py:755 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:769 +#: stock/models.py:767 msgid "Base part" msgstr "" -#: stock/models.py:779 +#: stock/models.py:777 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:791 +#: stock/models.py:789 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:799 stock/serializers.py:1542 +#: stock/models.py:797 stock/serializers.py:1547 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:810 +#: stock/models.py:808 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:829 +#: stock/models.py:827 msgid "Serial number for this item" msgstr "" -#: stock/models.py:843 stock/serializers.py:1525 +#: stock/models.py:841 stock/serializers.py:1530 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:848 +#: stock/models.py:846 msgid "Stock Quantity" msgstr "" -#: stock/models.py:858 +#: stock/models.py:856 msgid "Source Build" msgstr "" -#: stock/models.py:861 +#: stock/models.py:859 msgid "Build for this stock item" msgstr "" -#: stock/models.py:868 stock/templates/stock/item_base.html:363 +#: stock/models.py:866 stock/templates/stock/item_base.html:363 #, fuzzy #| msgid "Issued By" msgid "Consumed By" msgstr "发布者" -#: stock/models.py:871 +#: stock/models.py:869 #, fuzzy #| msgid "BuildOrder to which this build is allocated" msgid "Build order which consumed this stock item" msgstr "此次生产匹配的订单" -#: stock/models.py:880 +#: stock/models.py:878 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:884 +#: stock/models.py:882 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:890 +#: stock/models.py:888 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:901 +#: stock/models.py:899 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:919 +#: stock/models.py:917 msgid "Delete on deplete" msgstr "" -#: stock/models.py:920 +#: stock/models.py:918 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:940 +#: stock/models.py:938 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:971 +#: stock/models.py:969 msgid "Converted to part" msgstr "" -#: stock/models.py:1487 +#: stock/models.py:1489 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1493 +#: stock/models.py:1495 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1501 +#: stock/models.py:1503 #, fuzzy, python-brace-format #| msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgid "Quantity must not exceed available stock quantity ({self.quantity})" msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})" -#: stock/models.py:1507 +#: stock/models.py:1509 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1512 +#: stock/models.py:1514 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1520 stock/serializers.py:718 +#: stock/models.py:1522 stock/serializers.py:723 msgid "Serial numbers already exist" msgstr "序列号已存在" -#: stock/models.py:1617 +#: stock/models.py:1619 #, fuzzy #| msgid "Part image not found" msgid "Test template does not exist" msgstr "未找到商品图像" -#: stock/models.py:1635 +#: stock/models.py:1637 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1639 +#: stock/models.py:1641 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1642 +#: stock/models.py:1644 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1645 +#: stock/models.py:1647 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1648 +#: stock/models.py:1650 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1651 +#: stock/models.py:1653 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1658 stock/serializers.py:1431 +#: stock/models.py:1660 stock/serializers.py:1436 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1662 +#: stock/models.py:1664 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1670 +#: stock/models.py:1672 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1675 +#: stock/models.py:1677 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1936 +#: stock/models.py:1938 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:2317 +#: stock/models.py:2319 #, fuzzy #| msgid "Stock Item" msgid "Stock Item Tracking" msgstr "库存项" -#: stock/models.py:2350 +#: stock/models.py:2352 msgid "Entry notes" msgstr "" -#: stock/models.py:2390 +#: stock/models.py:2392 #, fuzzy #| msgid "Stock Items" msgid "Stock Item Test Result" msgstr "库存项" -#: stock/models.py:2423 +#: stock/models.py:2425 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2428 +#: stock/models.py:2430 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2433 +#: stock/models.py:2435 #, fuzzy #| msgid "Invalid value for overage" msgid "Invalid value for this test" msgstr "无效的备损值" -#: stock/models.py:2457 +#: stock/models.py:2459 msgid "Test result" msgstr "" -#: stock/models.py:2464 +#: stock/models.py:2466 msgid "Test output value" msgstr "" -#: stock/models.py:2472 +#: stock/models.py:2474 msgid "Test result attachment" msgstr "" -#: stock/models.py:2476 +#: stock/models.py:2478 msgid "Test notes" msgstr "" -#: stock/models.py:2484 templates/js/translated/stock.js:1548 +#: stock/models.py:2486 templates/js/translated/stock.js:1629 #, fuzzy #| msgid "Destination" msgid "Test station" msgstr "目的地" -#: stock/models.py:2485 +#: stock/models.py:2487 msgid "The identifier of the test station where the test was performed" msgstr "" -#: stock/models.py:2491 +#: stock/models.py:2493 msgid "Started" msgstr "" -#: stock/models.py:2492 +#: stock/models.py:2494 #, fuzzy #| msgid "Timestamp of last update" msgid "The timestamp of the test start" msgstr "最后一次更新时间" -#: stock/models.py:2498 +#: stock/models.py:2500 #, fuzzy #| msgid "Danish" msgid "Finished" msgstr "丹麦语" -#: stock/models.py:2499 +#: stock/models.py:2501 #, fuzzy #| msgid "Timestamp of last update" msgid "The timestamp of the test finish" @@ -10305,248 +10469,241 @@ msgstr "输入新项目的序列号" msgid "Test template for this result" msgstr "负责此订单的用户或群组" -#: stock/serializers.py:252 +#: stock/serializers.py:254 #, fuzzy #| msgid "Allocation items must be provided" msgid "Template ID or test name must be provided" msgstr "必须提供分配的项" -#: stock/serializers.py:284 +#: stock/serializers.py:286 msgid "The test finished time cannot be earlier than the test started time" msgstr "" -#: stock/serializers.py:320 +#: stock/serializers.py:323 msgid "Serial number is too large" msgstr "" -#: stock/serializers.py:449 stock/templates/stock/item_base.html:193 +#: stock/serializers.py:452 stock/templates/stock/item_base.html:193 msgid "Parent Item" msgstr "" -#: stock/serializers.py:450 +#: stock/serializers.py:453 #, fuzzy #| msgid "Source stock item" msgid "Parent stock item" msgstr "源库存项" -#: stock/serializers.py:469 +#: stock/serializers.py:472 msgid "Use pack size when adding: the quantity defined is the number of packs" msgstr "" -#: stock/serializers.py:585 templates/js/translated/build.js:991 -#: templates/js/translated/build.js:2344 -#, fuzzy -#| msgid "Allocated Parts" -msgid "Allocated Quantity" -msgstr "已分配的部件" - -#: stock/serializers.py:588 stock/templates/stock/item_base.html:437 +#: stock/serializers.py:593 stock/templates/stock/item_base.html:437 #: templates/js/translated/table_filters.js:435 users/models.py:174 msgid "Expired" msgstr "" -#: stock/serializers.py:594 stock/templates/stock/stock_sidebar.html:20 +#: stock/serializers.py:599 stock/templates/stock/stock_sidebar.html:20 msgid "Child Items" msgstr "" -#: stock/serializers.py:598 +#: stock/serializers.py:603 #, fuzzy #| msgid "Stock Item" msgid "Tracking Items" msgstr "库存项" -#: stock/serializers.py:604 +#: stock/serializers.py:609 msgid "Purchase price of this stock item, per unit or pack" msgstr "" -#: stock/serializers.py:623 +#: stock/serializers.py:628 #, fuzzy #| msgid "Part Pricing" msgid "Minimum Pricing" msgstr "商品价格" -#: stock/serializers.py:629 +#: stock/serializers.py:634 #, fuzzy #| msgid "Part Pricing" msgid "Maximum Pricing" msgstr "商品价格" -#: stock/serializers.py:653 +#: stock/serializers.py:658 msgid "Enter number of stock items to serialize" msgstr "" -#: stock/serializers.py:666 +#: stock/serializers.py:671 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({q})" msgstr "" -#: stock/serializers.py:673 +#: stock/serializers.py:678 msgid "Enter serial numbers for new items" msgstr "输入新项目的序列号" -#: stock/serializers.py:684 stock/serializers.py:1388 stock/serializers.py:1644 +#: stock/serializers.py:689 stock/serializers.py:1393 stock/serializers.py:1649 msgid "Destination stock location" msgstr "目标库存位置" -#: stock/serializers.py:691 +#: stock/serializers.py:696 msgid "Optional note field" msgstr "" -#: stock/serializers.py:701 +#: stock/serializers.py:706 msgid "Serial numbers cannot be assigned to this part" msgstr "" -#: stock/serializers.py:756 +#: stock/serializers.py:761 msgid "Select stock item to install" msgstr "" -#: stock/serializers.py:763 +#: stock/serializers.py:768 msgid "Quantity to Install" msgstr "" -#: stock/serializers.py:764 +#: stock/serializers.py:769 #, fuzzy #| msgid "Enter quantity for build output" msgid "Enter the quantity of items to install" msgstr "输入生产产出数量" -#: stock/serializers.py:769 stock/serializers.py:849 stock/serializers.py:945 -#: stock/serializers.py:995 +#: stock/serializers.py:774 stock/serializers.py:854 stock/serializers.py:950 +#: stock/serializers.py:1000 msgid "Add transaction note (optional)" msgstr "添加交易备注 (可选)" -#: stock/serializers.py:777 +#: stock/serializers.py:782 #, fuzzy #| msgid "Quantity must be a positive number" msgid "Quantity to install must be at least 1" msgstr "数量必须大于0" -#: stock/serializers.py:785 +#: stock/serializers.py:790 msgid "Stock item is unavailable" msgstr "" -#: stock/serializers.py:796 +#: stock/serializers.py:801 msgid "Selected part is not in the Bill of Materials" msgstr "" -#: stock/serializers.py:809 +#: stock/serializers.py:814 #, fuzzy #| msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgid "Quantity to install must not exceed available quantity" msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})" -#: stock/serializers.py:844 +#: stock/serializers.py:849 msgid "Destination location for uninstalled item" msgstr "" -#: stock/serializers.py:879 +#: stock/serializers.py:884 msgid "Select part to convert stock item into" msgstr "" -#: stock/serializers.py:892 +#: stock/serializers.py:897 msgid "Selected part is not a valid option for conversion" msgstr "" -#: stock/serializers.py:909 +#: stock/serializers.py:914 msgid "Cannot convert stock item with assigned SupplierPart" msgstr "" -#: stock/serializers.py:940 +#: stock/serializers.py:945 msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:977 +#: stock/serializers.py:982 #, fuzzy #| msgid "Selected stock item not found in BOM" msgid "Select stock items to change status" msgstr "在BOM中找不到选定的库存项" -#: stock/serializers.py:983 +#: stock/serializers.py:988 #, fuzzy #| msgid "Stock item created" msgid "No stock items selected" msgstr "库存项已创建" -#: stock/serializers.py:1079 stock/serializers.py:1156 +#: stock/serializers.py:1084 stock/serializers.py:1161 #: stock/templates/stock/location.html:165 #: stock/templates/stock/location.html:222 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/serializers.py:1149 templates/js/translated/stock.js:152 +#: stock/serializers.py:1154 templates/js/translated/stock.js:153 msgid "Parent stock location" msgstr "" -#: stock/serializers.py:1260 +#: stock/serializers.py:1265 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:1264 +#: stock/serializers.py:1269 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:1268 +#: stock/serializers.py:1273 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:1292 +#: stock/serializers.py:1297 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:1298 +#: stock/serializers.py:1303 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:1306 +#: stock/serializers.py:1311 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:1316 stock/serializers.py:1570 +#: stock/serializers.py:1321 stock/serializers.py:1575 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:1395 +#: stock/serializers.py:1400 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:1400 +#: stock/serializers.py:1405 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:1401 +#: stock/serializers.py:1406 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:1406 +#: stock/serializers.py:1411 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:1407 +#: stock/serializers.py:1412 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:1417 +#: stock/serializers.py:1422 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1484 +#: stock/serializers.py:1489 #, fuzzy #| msgid "Change" msgid "No Change" msgstr "更改" -#: stock/serializers.py:1513 +#: stock/serializers.py:1518 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1532 +#: stock/serializers.py:1537 #, fuzzy #| msgid "Stock item created" msgid "Stock item status code" msgstr "库存项已创建" -#: stock/serializers.py:1560 +#: stock/serializers.py:1565 msgid "Stock transaction notes" msgstr "" @@ -10578,7 +10735,7 @@ msgstr "隔离" msgid "Legacy stock tracking entry" msgstr "旧库存跟踪条目" -#: stock/status_codes.py:42 templates/js/translated/stock.js:544 +#: stock/status_codes.py:42 templates/js/translated/stock.js:545 msgid "Stock item created" msgstr "库存项已创建" @@ -10636,7 +10793,7 @@ msgstr "从父项拆分" msgid "Split child item" msgstr "拆分子项" -#: stock/status_codes.py:69 templates/js/translated/stock.js:1858 +#: stock/status_codes.py:69 templates/js/translated/stock.js:1939 msgid "Merged stock items" msgstr "合并的库存项目" @@ -10658,7 +10815,7 @@ msgstr "生产订单输出已完成" msgid "Build order output rejected" msgstr "已创建生产订单输出" -#: stock/status_codes.py:78 templates/js/translated/stock.js:1764 +#: stock/status_codes.py:78 templates/js/translated/stock.js:1845 msgid "Consumed by build order" msgstr "被生产订单消耗" @@ -10725,7 +10882,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3271 +#: stock/templates/stock/item.html:145 templates/js/translated/stock.js:3352 msgid "Install Stock Item" msgstr "" @@ -10733,7 +10890,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1701 +#: stock/templates/stock/item.html:294 templates/js/translated/stock.js:1782 msgid "Add Test Result" msgstr "" @@ -10756,17 +10913,17 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:79 -#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1824 +#: stock/templates/stock/location.html:90 templates/js/translated/stock.js:1905 msgid "Count stock" msgstr "" #: stock/templates/stock/item_base.html:81 -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1887 msgid "Add stock" msgstr "" #: stock/templates/stock/item_base.html:82 -#: templates/js/translated/stock.js:1815 +#: templates/js/translated/stock.js:1896 msgid "Remove stock" msgstr "" @@ -10775,12 +10932,12 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:88 -#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1833 +#: stock/templates/stock/location.html:96 templates/js/translated/stock.js:1914 msgid "Transfer stock" msgstr "" #: stock/templates/stock/item_base.html:91 -#: templates/js/translated/stock.js:1887 +#: templates/js/translated/stock.js:1968 msgid "Assign to customer" msgstr "" @@ -10821,7 +10978,7 @@ msgid "Delete stock item" msgstr "" #: stock/templates/stock/item_base.html:169 templates/InvenTree/search.html:139 -#: templates/js/translated/build.js:2123 templates/navbar.html:38 +#: templates/js/translated/build.js:2298 templates/navbar.html:38 msgid "Build" msgstr "生产" @@ -10880,12 +11037,8 @@ msgstr "" msgid "Navigate to next serial number" msgstr "" -#: stock/templates/stock/item_base.html:340 -msgid "Available Quantity" -msgstr "" - #: stock/templates/stock/item_base.html:398 -#: templates/js/translated/build.js:2380 +#: templates/js/translated/build.js:2555 msgid "No location set" msgstr "未设置仓储地点" @@ -10912,7 +11065,7 @@ msgid "No stocktake performed" msgstr "" #: stock/templates/stock/item_base.html:504 -#: templates/js/translated/stock.js:1952 +#: templates/js/translated/stock.js:2033 #, fuzzy #| msgid "Stock Item" msgid "stock item" @@ -11027,7 +11180,7 @@ msgid "New Location" msgstr "新建仓储地点" #: stock/templates/stock/location.html:299 -#: templates/js/translated/stock.js:2572 +#: templates/js/translated/stock.js:2653 #, fuzzy #| msgid "Stock Location" msgid "stock location" @@ -11307,11 +11460,11 @@ msgstr "" msgid "Part Settings" msgstr "商品设置" -#: templates/InvenTree/settings/part.html:43 +#: templates/InvenTree/settings/part.html:44 msgid "Part Import" msgstr "商品导入" -#: templates/InvenTree/settings/part.html:47 +#: templates/InvenTree/settings/part.html:48 msgid "Import Part" msgstr "导入商品" @@ -11544,9 +11697,9 @@ msgid "Rate" msgstr "" #: templates/InvenTree/settings/settings_staff_js.html:81 -#: templates/js/translated/forms.js:547 templates/js/translated/helpers.js:105 -#: templates/js/translated/part.js:392 templates/js/translated/pricing.js:629 -#: templates/js/translated/stock.js:245 users/models.py:406 +#: templates/js/translated/forms.js:548 templates/js/translated/helpers.js:105 +#: templates/js/translated/part.js:394 templates/js/translated/pricing.js:629 +#: templates/js/translated/stock.js:246 users/models.py:406 msgid "Delete" msgstr "删除" @@ -11575,7 +11728,7 @@ msgid "No project codes found" msgstr "无指定参数" #: templates/InvenTree/settings/settings_staff_js.html:158 -#: templates/js/translated/build.js:2228 +#: templates/js/translated/build.js:2403 msgid "group" msgstr "" @@ -11598,12 +11751,12 @@ msgid "No category parameter templates found" msgstr "未找到类别参数模板" #: templates/InvenTree/settings/settings_staff_js.html:308 -#: templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1651 msgid "Edit Template" msgstr "编辑模板" #: templates/InvenTree/settings/settings_staff_js.html:309 -#: templates/js/translated/part.js:1650 +#: templates/js/translated/part.js:1652 msgid "Delete Template" msgstr "删除模板" @@ -11683,7 +11836,7 @@ msgid "Home Page" msgstr "" #: templates/InvenTree/settings/sidebar.html:15 -#: templates/js/translated/forms.js:2167 templates/js/translated/tables.js:543 +#: templates/js/translated/forms.js:2185 templates/js/translated/tables.js:543 #: templates/navbar.html:107 templates/search.html:8 #: templates/search_form.html:6 templates/search_form.html:7 msgid "Search" @@ -12027,7 +12180,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:774 +#: templates/account/email_confirm.html:21 templates/js/translated/forms.js:775 msgid "Confirm" msgstr "确认" @@ -12260,7 +12413,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2557 +#: templates/js/translated/bom.js:1674 templates/js/translated/build.js:2750 msgid "Required Quantity" msgstr "" @@ -12274,7 +12427,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/part.js:3222 +#: templates/js/translated/part.js:3238 msgid "Minimum Quantity" msgstr "" @@ -12425,81 +12578,81 @@ msgstr "" msgid "Invalid server response" msgstr "" -#: templates/js/translated/barcode.js:372 +#: templates/js/translated/barcode.js:403 msgid "Scan barcode data" msgstr "" -#: templates/js/translated/barcode.js:420 templates/navbar.html:114 +#: templates/js/translated/barcode.js:451 templates/navbar.html:114 msgid "Scan Barcode" msgstr "扫描条形码" -#: templates/js/translated/barcode.js:458 +#: templates/js/translated/barcode.js:489 msgid "No URL in response" msgstr "" -#: templates/js/translated/barcode.js:498 +#: templates/js/translated/barcode.js:529 msgid "This will remove the link to the associated barcode" msgstr "" -#: templates/js/translated/barcode.js:504 +#: templates/js/translated/barcode.js:535 msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:567 templates/js/translated/stock.js:1158 +#: templates/js/translated/barcode.js:598 templates/js/translated/stock.js:1184 msgid "Remove stock item" msgstr "" -#: templates/js/translated/barcode.js:610 +#: templates/js/translated/barcode.js:641 msgid "Scan Stock Items Into Location" msgstr "" -#: templates/js/translated/barcode.js:612 +#: templates/js/translated/barcode.js:643 msgid "Scan stock item barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:615 -#: templates/js/translated/barcode.js:812 +#: templates/js/translated/barcode.js:646 +#: templates/js/translated/barcode.js:843 msgid "Check In" msgstr "" -#: templates/js/translated/barcode.js:647 +#: templates/js/translated/barcode.js:678 msgid "No barcode provided" msgstr "" -#: templates/js/translated/barcode.js:687 +#: templates/js/translated/barcode.js:718 msgid "Stock Item already scanned" msgstr "" -#: templates/js/translated/barcode.js:691 +#: templates/js/translated/barcode.js:722 msgid "Stock Item already in this location" msgstr "" -#: templates/js/translated/barcode.js:698 +#: templates/js/translated/barcode.js:729 msgid "Added stock item" msgstr "" -#: templates/js/translated/barcode.js:707 +#: templates/js/translated/barcode.js:738 msgid "Barcode does not match valid stock item" msgstr "" -#: templates/js/translated/barcode.js:726 +#: templates/js/translated/barcode.js:757 msgid "Scan Stock Container Into Location" msgstr "" -#: templates/js/translated/barcode.js:728 +#: templates/js/translated/barcode.js:759 msgid "Scan stock container barcode to check in to this location" msgstr "" -#: templates/js/translated/barcode.js:762 +#: templates/js/translated/barcode.js:793 msgid "Barcode does not match valid stock location" msgstr "" -#: templates/js/translated/barcode.js:806 +#: templates/js/translated/barcode.js:837 msgid "Check Into Location" msgstr "" -#: templates/js/translated/barcode.js:875 -#: templates/js/translated/barcode.js:884 +#: templates/js/translated/barcode.js:906 +#: templates/js/translated/barcode.js:915 msgid "Barcode does not match a valid location" msgstr "" @@ -12637,7 +12790,7 @@ msgstr "" msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2501 +#: templates/js/translated/bom.js:950 templates/js/translated/build.js:2676 msgid "Variant stock allowed" msgstr "" @@ -12657,32 +12810,32 @@ msgstr "" msgid "No pricing available" msgstr "" -#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2622 +#: templates/js/translated/bom.js:1184 templates/js/translated/build.js:2815 #, fuzzy #| msgid "External Link" msgid "External stock" msgstr "外部链接" -#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2596 +#: templates/js/translated/bom.js:1188 templates/js/translated/build.js:2789 #: templates/js/translated/sales_order.js:1946 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2600 +#: templates/js/translated/bom.js:1193 templates/js/translated/build.js:2793 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2602 -#: templates/js/translated/part.js:1260 +#: templates/js/translated/bom.js:1195 templates/js/translated/build.js:2795 +#: templates/js/translated/part.js:1262 #: templates/js/translated/sales_order.js:1943 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2604 +#: templates/js/translated/bom.js:1197 templates/js/translated/build.js:2797 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2587 +#: templates/js/translated/bom.js:1225 templates/js/translated/build.js:2780 msgid "Consumable item" msgstr "" @@ -12714,7 +12867,7 @@ msgstr "" msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2486 +#: templates/js/translated/bom.js:1657 templates/js/translated/build.js:2661 msgid "Required Part" msgstr "" @@ -12722,410 +12875,462 @@ msgstr "" msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:143 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:191 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:223 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:231 +#: templates/js/translated/build.js:232 msgid "Are you sure you wish to cancel this build?" msgstr "是否确定取消生产?" -#: templates/js/translated/build.js:237 +#: templates/js/translated/build.js:238 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:244 +#: templates/js/translated/build.js:245 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:296 +#: templates/js/translated/build.js:297 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:304 +#: templates/js/translated/build.js:305 msgid "This build order cannot be completed as there are incomplete outputs" msgstr "" -#: templates/js/translated/build.js:309 +#: templates/js/translated/build.js:310 msgid "Build Order is incomplete" msgstr "生产订单未完成" -#: templates/js/translated/build.js:327 +#: templates/js/translated/build.js:328 msgid "Complete Build Order" msgstr "生产订单完成" -#: templates/js/translated/build.js:368 templates/js/translated/stock.js:119 -#: templates/js/translated/stock.js:294 +#: templates/js/translated/build.js:369 templates/js/translated/stock.js:120 +#: templates/js/translated/stock.js:295 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:370 templates/js/translated/stock.js:121 -#: templates/js/translated/stock.js:296 +#: templates/js/translated/build.js:371 templates/js/translated/stock.js:122 +#: templates/js/translated/stock.js:297 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:379 +#: templates/js/translated/build.js:380 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:380 +#: templates/js/translated/build.js:381 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:388 +#: templates/js/translated/build.js:389 msgid "Trackable parts can have serial numbers specified" msgstr "可追踪商品可以指定序列号" -#: templates/js/translated/build.js:389 +#: templates/js/translated/build.js:390 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:396 +#: templates/js/translated/build.js:397 msgid "Create Build Output" msgstr "创建创建生产产出" -#: templates/js/translated/build.js:427 +#: templates/js/translated/build.js:428 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:435 +#: templates/js/translated/build.js:436 #, fuzzy #| msgid "Manually allocate stock to build" msgid "Deallocate stock from build output" msgstr "手动分配存货进行生成" -#: templates/js/translated/build.js:444 +#: templates/js/translated/build.js:445 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:452 +#: templates/js/translated/build.js:453 #, fuzzy #| msgid "Build output" msgid "Scrap build output" msgstr "生产产出" -#: templates/js/translated/build.js:459 +#: templates/js/translated/build.js:460 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:479 +#: templates/js/translated/build.js:480 #, fuzzy #| msgid "Are you sure you wish to cancel this build?" msgid "Are you sure you wish to deallocate the selected stock items from this build?" msgstr "是否确定取消生产?" -#: templates/js/translated/build.js:497 +#: templates/js/translated/build.js:498 #, fuzzy #| msgid "Select Stock Items" msgid "Deallocate Stock Items" msgstr "选择库存项" -#: templates/js/translated/build.js:583 templates/js/translated/build.js:711 -#: templates/js/translated/build.js:837 +#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 +#: templates/js/translated/build.js:838 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:584 templates/js/translated/build.js:712 -#: templates/js/translated/build.js:838 +#: templates/js/translated/build.js:585 templates/js/translated/build.js:713 +#: templates/js/translated/build.js:839 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:598 +#: templates/js/translated/build.js:599 #, fuzzy #| msgid "Delete any build outputs which have not been completed" msgid "Selected build outputs will be marked as complete" msgstr "删除所有未完成的生产产出" -#: templates/js/translated/build.js:602 templates/js/translated/build.js:736 -#: templates/js/translated/build.js:860 +#: templates/js/translated/build.js:603 templates/js/translated/build.js:737 +#: templates/js/translated/build.js:861 msgid "Output" msgstr "" -#: templates/js/translated/build.js:630 +#: templates/js/translated/build.js:631 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:727 +#: templates/js/translated/build.js:728 #, fuzzy #| msgid "Delete any build outputs which have not been completed" msgid "Selected build outputs will be marked as scrapped" msgstr "删除所有未完成的生产产出" -#: templates/js/translated/build.js:729 +#: templates/js/translated/build.js:730 #, fuzzy #| msgid "Delete any build outputs which have not been completed" msgid "Scrapped output are marked as rejected" msgstr "删除所有未完成的生产产出" -#: templates/js/translated/build.js:730 +#: templates/js/translated/build.js:731 #, fuzzy #| msgid "Stock item is over-allocated" msgid "Allocated stock items will no longer be available" msgstr "库存物品分配过度!" -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:732 msgid "The completion status of the build order will not be adjusted" msgstr "" -#: templates/js/translated/build.js:762 +#: templates/js/translated/build.js:763 #, fuzzy #| msgid "Create Build Output" msgid "Scrap Build Outputs" msgstr "创建创建生产产出" -#: templates/js/translated/build.js:852 +#: templates/js/translated/build.js:853 #, fuzzy #| msgid "All selected supplier parts will be deleted" msgid "Selected build outputs will be deleted" msgstr "删除所有选定的供应商商品" -#: templates/js/translated/build.js:854 +#: templates/js/translated/build.js:855 #, fuzzy #| msgid "Build output is already completed" msgid "Build output data will be permanently deleted" msgstr "生产产出已完成" -#: templates/js/translated/build.js:855 +#: templates/js/translated/build.js:856 #, fuzzy #| msgid "All selected supplier parts will be deleted" msgid "Allocated stock items will be returned to stock" msgstr "删除所有选定的供应商商品" -#: templates/js/translated/build.js:873 +#: templates/js/translated/build.js:874 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:960 +#: templates/js/translated/build.js:961 +#, fuzzy +#| msgid "Delete location" +msgid "Delete allocations" +msgstr "删除仓储地" + +#: templates/js/translated/build.js:968 +#, fuzzy +#| msgid "Delete Stock Location" +msgid "Delete Stock Allocations" +msgstr "删除仓储地点" + +#: templates/js/translated/build.js:991 +#, fuzzy +#| msgid "Unallocate stock" +msgid "No allocated stock" +msgstr "未分配库存" + +#: templates/js/translated/build.js:1047 +#, fuzzy +#| msgid "Stock Item" +msgid "Stock item" +msgstr "库存项" + +#: templates/js/translated/build.js:1072 +#, fuzzy +#| msgid "Edit location" +msgid "Edit build allocation" +msgstr "编辑仓储地" + +#: templates/js/translated/build.js:1073 +#, fuzzy +#| msgid "Delete location" +msgid "Delete build allocation" +msgstr "删除仓储地" + +#: templates/js/translated/build.js:1091 +#, fuzzy +#| msgid "Edit location" +msgid "Edit Build Allocation" +msgstr "编辑仓储地" + +#: templates/js/translated/build.js:1104 +#, fuzzy +#| msgid "Delete location" +msgid "Delete Build Allocation" +msgstr "删除仓储地" + +#: templates/js/translated/build.js:1135 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:1005 +#: templates/js/translated/build.js:1180 msgid "Location not specified" msgstr "未指定仓储地点" -#: templates/js/translated/build.js:1027 +#: templates/js/translated/build.js:1202 msgid "Complete outputs" msgstr "已完成输出" -#: templates/js/translated/build.js:1045 +#: templates/js/translated/build.js:1220 #, fuzzy #| msgid "Complete outputs" msgid "Scrap outputs" msgstr "已完成输出" -#: templates/js/translated/build.js:1063 +#: templates/js/translated/build.js:1238 msgid "Delete outputs" msgstr "删除输出" -#: templates/js/translated/build.js:1116 +#: templates/js/translated/build.js:1291 #, fuzzy #| msgid "Build output" msgid "build output" msgstr "生产产出" -#: templates/js/translated/build.js:1117 +#: templates/js/translated/build.js:1292 #, fuzzy #| msgid "Build output" msgid "build outputs" msgstr "生产产出" -#: templates/js/translated/build.js:1121 +#: templates/js/translated/build.js:1296 #, fuzzy #| msgid "Build actions" msgid "Build output actions" msgstr "生产操作" -#: templates/js/translated/build.js:1297 +#: templates/js/translated/build.js:1472 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1390 +#: templates/js/translated/build.js:1565 #, fuzzy #| msgid "Allocated Parts" msgid "Allocated Lines" msgstr "已分配的部件" -#: templates/js/translated/build.js:1404 +#: templates/js/translated/build.js:1579 msgid "Required Tests" msgstr "" -#: templates/js/translated/build.js:1576 +#: templates/js/translated/build.js:1751 #: templates/js/translated/purchase_order.js:611 #: templates/js/translated/sales_order.js:1207 msgid "Select Parts" msgstr "选择商品" -#: templates/js/translated/build.js:1577 +#: templates/js/translated/build.js:1752 #: templates/js/translated/sales_order.js:1208 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1640 +#: templates/js/translated/build.js:1815 #: templates/js/translated/sales_order.js:1157 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:1717 +#: templates/js/translated/build.js:1892 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:1718 +#: templates/js/translated/build.js:1893 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1907 #: templates/js/translated/sales_order.js:1222 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:1760 +#: templates/js/translated/build.js:1935 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:1771 +#: templates/js/translated/build.js:1946 #: templates/js/translated/sales_order.js:1319 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:1844 +#: templates/js/translated/build.js:2019 #: templates/js/translated/sales_order.js:1398 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:1941 +#: templates/js/translated/build.js:2116 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:1942 +#: templates/js/translated/build.js:2117 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:1944 +#: templates/js/translated/build.js:2119 msgid "If a location is specified, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:1945 +#: templates/js/translated/build.js:2120 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:1946 +#: templates/js/translated/build.js:2121 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:1977 +#: templates/js/translated/build.js:2152 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2082 +#: templates/js/translated/build.js:2257 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2117 templates/js/translated/build.js:2480 -#: templates/js/translated/forms.js:2163 templates/js/translated/forms.js:2179 -#: templates/js/translated/part.js:2319 templates/js/translated/part.js:2745 -#: templates/js/translated/stock.js:1983 templates/js/translated/stock.js:2710 +#: templates/js/translated/build.js:2292 templates/js/translated/build.js:2655 +#: templates/js/translated/forms.js:2181 templates/js/translated/forms.js:2197 +#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2761 +#: templates/js/translated/stock.js:2064 templates/js/translated/stock.js:2791 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2131 +#: templates/js/translated/build.js:2306 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2213 templates/js/translated/stock.js:3042 +#: templates/js/translated/build.js:2388 templates/js/translated/stock.js:3123 msgid "No user information" msgstr "没有用户信息" -#: templates/js/translated/build.js:2389 +#: templates/js/translated/build.js:2564 #: templates/js/translated/sales_order.js:1682 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:2390 +#: templates/js/translated/build.js:2565 #: templates/js/translated/sales_order.js:1683 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:2405 +#: templates/js/translated/build.js:2580 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:2417 +#: templates/js/translated/build.js:2592 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:2456 +#: templates/js/translated/build.js:2631 #, fuzzy #| msgid "Build actions" msgid "build line" msgstr "生产操作" -#: templates/js/translated/build.js:2457 +#: templates/js/translated/build.js:2632 #, fuzzy #| msgid "Build actions" msgid "build lines" msgstr "生产操作" -#: templates/js/translated/build.js:2475 +#: templates/js/translated/build.js:2650 #, fuzzy #| msgid "Subcategories" msgid "No build lines found" msgstr "子类别" -#: templates/js/translated/build.js:2505 templates/js/translated/part.js:790 -#: templates/js/translated/part.js:1206 +#: templates/js/translated/build.js:2680 templates/js/translated/part.js:792 +#: templates/js/translated/part.js:1208 msgid "Trackable part" msgstr "可追溯商品" -#: templates/js/translated/build.js:2540 +#: templates/js/translated/build.js:2723 +msgid "Gets Inherited" +msgstr "" + +#: templates/js/translated/build.js:2733 #, fuzzy #| msgid "Quantity" msgid "Unit Quantity" msgstr "数量" -#: templates/js/translated/build.js:2592 +#: templates/js/translated/build.js:2785 #: templates/js/translated/sales_order.js:1951 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:2647 +#: templates/js/translated/build.js:2840 #, fuzzy #| msgid "Minimum Stock" msgid "Consumable Item" msgstr "最低库存" -#: templates/js/translated/build.js:2654 +#: templates/js/translated/build.js:2847 #, fuzzy #| msgid "Stock Item" msgid "Tracked item" msgstr "库存项" -#: templates/js/translated/build.js:2655 +#: templates/js/translated/build.js:2848 msgid "Allocate tracked items against individual build outputs" msgstr "" -#: templates/js/translated/build.js:2663 +#: templates/js/translated/build.js:2856 #: templates/js/translated/sales_order.js:2052 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:2668 templates/js/translated/stock.js:1868 +#: templates/js/translated/build.js:2861 templates/js/translated/stock.js:1949 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:2672 +#: templates/js/translated/build.js:2865 #: templates/js/translated/sales_order.js:2046 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:2676 +#: templates/js/translated/build.js:2869 #, fuzzy #| msgid "Confirm stock allocation" msgid "Remove stock allocation" @@ -13306,7 +13511,7 @@ msgid "Delete Parameters" msgstr "删除参数" #: templates/js/translated/company.js:1191 -#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2248 +#: templates/js/translated/company.js:1479 templates/js/translated/part.js:2250 msgid "Order parts" msgstr "订购商品" @@ -13325,34 +13530,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:1279 -#: templates/js/translated/company.js:1567 templates/js/translated/part.js:798 -#: templates/js/translated/part.js:1214 +#: templates/js/translated/company.js:1567 templates/js/translated/part.js:800 +#: templates/js/translated/part.js:1216 msgid "Template part" msgstr "" #: templates/js/translated/company.js:1283 -#: templates/js/translated/company.js:1571 templates/js/translated/part.js:802 -#: templates/js/translated/part.js:1218 +#: templates/js/translated/company.js:1571 templates/js/translated/part.js:804 +#: templates/js/translated/part.js:1220 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1468 +#: templates/js/translated/company.js:1403 templates/js/translated/part.js:1470 msgid "No parameters found" msgstr "无指定参数" -#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1531 +#: templates/js/translated/company.js:1438 templates/js/translated/part.js:1533 msgid "Edit parameter" msgstr "编辑参数" -#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1532 +#: templates/js/translated/company.js:1439 templates/js/translated/part.js:1534 msgid "Delete parameter" msgstr "删除参数" -#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1437 +#: templates/js/translated/company.js:1456 templates/js/translated/part.js:1439 msgid "Edit Parameter" msgstr "编辑参数" -#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1553 +#: templates/js/translated/company.js:1465 templates/js/translated/part.js:1555 msgid "Delete Parameter" msgstr "删除参数" @@ -13454,61 +13659,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:378 templates/js/translated/forms.js:393 -#: templates/js/translated/forms.js:407 templates/js/translated/forms.js:421 +#: templates/js/translated/forms.js:379 templates/js/translated/forms.js:394 +#: templates/js/translated/forms.js:408 templates/js/translated/forms.js:422 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:380 +#: templates/js/translated/forms.js:381 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:395 +#: templates/js/translated/forms.js:396 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:409 +#: templates/js/translated/forms.js:410 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:423 +#: templates/js/translated/forms.js:424 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:800 +#: templates/js/translated/forms.js:801 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:903 +#: templates/js/translated/forms.js:904 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1477 templates/modals.html:19 +#: templates/js/translated/forms.js:1478 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1975 +#: templates/js/translated/forms.js:1993 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:2286 templates/js/translated/search.js:239 +#: templates/js/translated/forms.js:2304 templates/js/translated/search.js:239 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2500 +#: templates/js/translated/forms.js:2518 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3120 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:3102 +#: templates/js/translated/forms.js:3120 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:3114 +#: templates/js/translated/forms.js:3132 msgid "Select Columns" msgstr "" @@ -13615,7 +13820,7 @@ msgstr "" #: templates/js/translated/news.js:38 #: templates/js/translated/notification.js:46 -#: templates/js/translated/part.js:1608 +#: templates/js/translated/part.js:1610 msgid "ID" msgstr "" @@ -13664,7 +13869,7 @@ msgid "Delete Line" msgstr "" #: templates/js/translated/order.js:281 -#: templates/js/translated/purchase_order.js:1990 +#: templates/js/translated/purchase_order.js:2061 msgid "No line items found" msgstr "" @@ -13696,353 +13901,356 @@ msgstr "商品重复选项" msgid "Add Part Category" msgstr "增加商品类别" -#: templates/js/translated/part.js:332 templates/js/translated/stock.js:175 +#: templates/js/translated/part.js:334 templates/js/translated/stock.js:176 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:352 +#: templates/js/translated/part.js:354 msgid "Create Part Category" msgstr "创建商品类别" -#: templates/js/translated/part.js:355 +#: templates/js/translated/part.js:357 #, fuzzy #| msgid "Create new part category" msgid "Create new category after this one" msgstr "新建商品类别" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:358 #, fuzzy #| msgid "Part category" msgid "Part category created" msgstr "商品类别" -#: templates/js/translated/part.js:370 +#: templates/js/translated/part.js:372 msgid "Edit Part Category" msgstr "编辑商品类别" -#: templates/js/translated/part.js:383 +#: templates/js/translated/part.js:385 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:388 +#: templates/js/translated/part.js:390 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:397 +#: templates/js/translated/part.js:399 msgid "Delete Part Category" msgstr "删除商品类别" -#: templates/js/translated/part.js:401 +#: templates/js/translated/part.js:403 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:406 +#: templates/js/translated/part.js:408 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:432 msgid "Create Part" msgstr "创建商品" -#: templates/js/translated/part.js:432 +#: templates/js/translated/part.js:434 msgid "Create another part after this one" msgstr "" -#: templates/js/translated/part.js:433 +#: templates/js/translated/part.js:435 msgid "Part created successfully" msgstr "" -#: templates/js/translated/part.js:461 +#: templates/js/translated/part.js:463 msgid "Edit Part" msgstr "编辑商品" -#: templates/js/translated/part.js:463 +#: templates/js/translated/part.js:465 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:476 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:533 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:532 +#: templates/js/translated/part.js:534 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:546 +#: templates/js/translated/part.js:548 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:548 +#: templates/js/translated/part.js:550 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:549 +#: templates/js/translated/part.js:551 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:550 +#: templates/js/translated/part.js:552 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:559 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:593 +#: templates/js/translated/part.js:595 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:595 +#: templates/js/translated/part.js:597 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:600 +#: templates/js/translated/part.js:602 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:602 +#: templates/js/translated/part.js:604 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:621 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:629 +#: templates/js/translated/part.js:631 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:632 +#: templates/js/translated/part.js:634 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:657 +#: templates/js/translated/part.js:659 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:685 +#: templates/js/translated/part.js:687 #: templates/js/translated/table_filters.js:752 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:688 +#: templates/js/translated/part.js:690 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:748 +#: templates/js/translated/part.js:750 msgid "Demand" msgstr "" -#: templates/js/translated/part.js:771 +#: templates/js/translated/part.js:773 msgid "Unit" msgstr "" -#: templates/js/translated/part.js:794 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:796 templates/js/translated/part.js:1212 msgid "Virtual part" msgstr "虚拟商品" -#: templates/js/translated/part.js:806 +#: templates/js/translated/part.js:808 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:810 +#: templates/js/translated/part.js:812 msgid "Salable part" msgstr "可销售商品" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Schedule generation of a new stocktake report." msgstr "" -#: templates/js/translated/part.js:893 +#: templates/js/translated/part.js:895 msgid "Once complete, the stocktake report will be available for download." msgstr "" -#: templates/js/translated/part.js:901 +#: templates/js/translated/part.js:903 msgid "Generate Stocktake Report" msgstr "" -#: templates/js/translated/part.js:905 +#: templates/js/translated/part.js:907 msgid "Stocktake report scheduled" msgstr "" -#: templates/js/translated/part.js:1054 +#: templates/js/translated/part.js:1056 msgid "No stocktake information available" msgstr "" -#: templates/js/translated/part.js:1112 templates/js/translated/part.js:1148 +#: templates/js/translated/part.js:1114 templates/js/translated/part.js:1150 msgid "Edit Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1116 templates/js/translated/part.js:1158 +#: templates/js/translated/part.js:1118 templates/js/translated/part.js:1160 msgid "Delete Stocktake Entry" msgstr "" -#: templates/js/translated/part.js:1285 +#: templates/js/translated/part.js:1287 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1603 +#: templates/js/translated/part.js:1605 msgid "No part parameter templates found" msgstr "未找到商品参数模板" -#: templates/js/translated/part.js:1666 +#: templates/js/translated/part.js:1668 msgid "Edit Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1680 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/js/translated/part.js:1686 +#: templates/js/translated/part.js:1688 msgid "Delete Part Parameter Template" msgstr "" -#: templates/js/translated/part.js:1720 -#: templates/js/translated/purchase_order.js:1654 +#: templates/js/translated/part.js:1722 +#: templates/js/translated/purchase_order.js:1725 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/part.js:1864 -#: templates/js/translated/purchase_order.js:2153 +#: templates/js/translated/part.js:1866 +#: templates/js/translated/purchase_order.js:2224 #: templates/js/translated/return_order.js:755 #: templates/js/translated/sales_order.js:1911 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/part.js:1910 -#: templates/js/translated/purchase_order.js:2220 +#: templates/js/translated/part.js:1912 +#: templates/js/translated/purchase_order.js:2291 msgid "Receive line item" msgstr "" -#: templates/js/translated/part.js:1973 +#: templates/js/translated/part.js:1975 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1995 +#: templates/js/translated/part.js:1997 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:2083 templates/js/translated/part.js:2509 +#: templates/js/translated/part.js:2085 templates/js/translated/part.js:2525 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:2204 +#: templates/js/translated/part.js:2206 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:2209 +#: templates/js/translated/part.js:2211 msgid "Set Part Category" msgstr "设置商品类别" -#: templates/js/translated/part.js:2239 +#: templates/js/translated/part.js:2241 msgid "Set category" msgstr "设置类别" -#: templates/js/translated/part.js:2290 +#: templates/js/translated/part.js:2293 #, fuzzy #| msgid "Edit part" msgid "part" msgstr "编辑商品" -#: templates/js/translated/part.js:2291 +#: templates/js/translated/part.js:2294 #, fuzzy #| msgid "Parts" msgid "parts" msgstr "商品" -#: templates/js/translated/part.js:2387 +#: templates/js/translated/part.js:2390 msgid "No category" msgstr "没有分类" -#: templates/js/translated/part.js:2534 templates/js/translated/part.js:2664 -#: templates/js/translated/stock.js:2669 +#: templates/js/translated/part.js:2550 templates/js/translated/part.js:2680 +#: templates/js/translated/stock.js:2750 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:2550 +#: templates/js/translated/part.js:2566 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:2648 +#: templates/js/translated/part.js:2664 #, fuzzy #| msgid "Subcategories" msgid "No subcategories found" msgstr "子类别" -#: templates/js/translated/part.js:2684 templates/js/translated/stock.js:2689 +#: templates/js/translated/part.js:2700 templates/js/translated/stock.js:2770 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2764 +#: templates/js/translated/part.js:2780 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2780 +#: templates/js/translated/part.js:2796 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2868 +#: templates/js/translated/part.js:2884 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2890 templates/js/translated/search.js:342 +#: templates/js/translated/part.js:2906 templates/js/translated/search.js:342 msgid "results" msgstr "" -#: templates/js/translated/part.js:2940 templates/js/translated/stock.js:1456 -msgid "Edit test result" -msgstr "" +#: templates/js/translated/part.js:2956 +#, fuzzy +#| msgid "Edit Template" +msgid "Edit test template" +msgstr "编辑模板" -#: templates/js/translated/part.js:2941 templates/js/translated/stock.js:1457 -#: templates/js/translated/stock.js:1731 -msgid "Delete test result" -msgstr "" +#: templates/js/translated/part.js:2957 +#, fuzzy +#| msgid "Delete Template" +msgid "Delete test template" +msgstr "删除模板" -#: templates/js/translated/part.js:2945 +#: templates/js/translated/part.js:2961 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2961 +#: templates/js/translated/part.js:2977 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2975 +#: templates/js/translated/part.js:2991 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:3054 templates/js/translated/part.js:3055 +#: templates/js/translated/part.js:3070 templates/js/translated/part.js:3071 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:3057 +#: templates/js/translated/part.js:3073 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:3063 +#: templates/js/translated/part.js:3079 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:3113 +#: templates/js/translated/part.js:3129 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:3119 +#: templates/js/translated/part.js:3135 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:3215 +#: templates/js/translated/part.js:3231 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:3231 +#: templates/js/translated/part.js:3247 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:3276 +#: templates/js/translated/part.js:3292 msgid "Minimum Stock Level" msgstr "" @@ -14271,124 +14479,143 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/purchase_order.js:1191 +#: templates/js/translated/purchase_order.js:1170 +#: templates/js/translated/stock.js:1211 +#, fuzzy +#| msgid "Select Stock Items" +msgid "Specify packaging for incoming stock items" +msgstr "选择库存项" + +#: templates/js/translated/purchase_order.js:1223 msgid "Stock Status" msgstr "" -#: templates/js/translated/purchase_order.js:1205 +#: templates/js/translated/purchase_order.js:1237 #, fuzzy #| msgid "Barcode" msgid "Add barcode" msgstr "条形码" -#: templates/js/translated/purchase_order.js:1206 +#: templates/js/translated/purchase_order.js:1238 #, fuzzy #| msgid "Remove row" msgid "Remove barcode" msgstr "移除行" -#: templates/js/translated/purchase_order.js:1209 +#: templates/js/translated/purchase_order.js:1241 #, fuzzy #| msgid "Edit location" msgid "Specify location" msgstr "编辑仓储地" -#: templates/js/translated/purchase_order.js:1217 +#: templates/js/translated/purchase_order.js:1249 msgid "Add batch code" msgstr "" -#: templates/js/translated/purchase_order.js:1228 +#: templates/js/translated/purchase_order.js:1259 +#, fuzzy +#| msgid "Edit location" +msgid "Specify packaging" +msgstr "编辑仓储地" + +#: templates/js/translated/purchase_order.js:1270 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/purchase_order.js:1280 +#: templates/js/translated/purchase_order.js:1281 +#, fuzzy +#| msgid "Contact" +msgid "Add note" +msgstr "联系人" + +#: templates/js/translated/purchase_order.js:1338 #, fuzzy #| msgid "Serial Numbers" msgid "Serials" msgstr "序列号" -#: templates/js/translated/purchase_order.js:1305 +#: templates/js/translated/purchase_order.js:1368 msgid "Order Code" msgstr "订单编码" -#: templates/js/translated/purchase_order.js:1307 +#: templates/js/translated/purchase_order.js:1370 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/purchase_order.js:1333 +#: templates/js/translated/purchase_order.js:1396 #: templates/js/translated/return_order.js:560 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/purchase_order.js:1334 +#: templates/js/translated/purchase_order.js:1397 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/purchase_order.js:1402 +#: templates/js/translated/purchase_order.js:1465 #, fuzzy #| msgid "Scan Barcode" msgid "Scan Item Barcode" msgstr "扫描条形码" -#: templates/js/translated/purchase_order.js:1403 +#: templates/js/translated/purchase_order.js:1466 msgid "Scan barcode on incoming item (must not match any existing stock items)" msgstr "" -#: templates/js/translated/purchase_order.js:1417 +#: templates/js/translated/purchase_order.js:1480 #, fuzzy #| msgid "Enter barcode data" msgid "Invalid barcode data" msgstr "输入条形码数据" -#: templates/js/translated/purchase_order.js:1681 +#: templates/js/translated/purchase_order.js:1752 #: templates/js/translated/return_order.js:285 #: templates/js/translated/sales_order.js:810 #: templates/js/translated/sales_order.js:1034 msgid "Order is overdue" msgstr "" -#: templates/js/translated/purchase_order.js:1843 +#: templates/js/translated/purchase_order.js:1914 #, fuzzy #| msgid "All selected supplier parts will be deleted" msgid "All selected Line items will be deleted" msgstr "删除所有选定的供应商商品" -#: templates/js/translated/purchase_order.js:1861 +#: templates/js/translated/purchase_order.js:1932 #, fuzzy #| msgid "Allocate selected items" msgid "Delete selected Line items?" msgstr "分配选定项目" -#: templates/js/translated/purchase_order.js:1916 +#: templates/js/translated/purchase_order.js:1987 #: templates/js/translated/sales_order.js:2106 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1931 +#: templates/js/translated/purchase_order.js:2002 #: templates/js/translated/return_order.js:475 #: templates/js/translated/return_order.js:668 #: templates/js/translated/sales_order.js:2119 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:1942 +#: templates/js/translated/purchase_order.js:2013 #: templates/js/translated/return_order.js:681 #: templates/js/translated/sales_order.js:2130 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/purchase_order.js:2224 +#: templates/js/translated/purchase_order.js:2295 #: templates/js/translated/sales_order.js:2060 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/purchase_order.js:2225 +#: templates/js/translated/purchase_order.js:2296 #: templates/js/translated/return_order.js:800 #: templates/js/translated/sales_order.js:2061 msgid "Edit line item" msgstr "" -#: templates/js/translated/purchase_order.js:2226 +#: templates/js/translated/purchase_order.js:2297 #: templates/js/translated/return_order.js:804 #: templates/js/translated/sales_order.js:2067 msgid "Delete line item" @@ -14634,7 +14861,7 @@ msgstr "" #: templates/js/translated/sales_order.js:1659 #: templates/js/translated/sales_order.js:1746 -#: templates/js/translated/stock.js:1776 +#: templates/js/translated/stock.js:1857 msgid "Shipped to customer" msgstr "" @@ -14692,506 +14919,526 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:98 +#: templates/js/translated/stock.js:99 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:129 +#: templates/js/translated/stock.js:130 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:139 +#: templates/js/translated/stock.js:140 msgid "Default icon for all locations that have no icon set (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/stock.js:166 +#: templates/js/translated/stock.js:167 #, fuzzy #| msgid "Location" msgid "Add Location type" msgstr "地点" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:203 msgid "Edit Stock Location" msgstr "编辑仓储地点" -#: templates/js/translated/stock.js:217 +#: templates/js/translated/stock.js:218 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:219 +#: templates/js/translated/stock.js:220 msgid "Create another location after this one" msgstr "" -#: templates/js/translated/stock.js:220 +#: templates/js/translated/stock.js:221 #, fuzzy #| msgid "Stock item created" msgid "Stock location created" msgstr "库存项已创建" -#: templates/js/translated/stock.js:234 +#: templates/js/translated/stock.js:235 msgid "Are you sure you want to delete this stock location?" msgstr "确实要删除此仓储地点吗?" -#: templates/js/translated/stock.js:241 +#: templates/js/translated/stock.js:242 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:250 +#: templates/js/translated/stock.js:251 msgid "Delete Stock Location" msgstr "删除仓储地点" -#: templates/js/translated/stock.js:254 +#: templates/js/translated/stock.js:255 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:259 +#: templates/js/translated/stock.js:260 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:313 +#: templates/js/translated/stock.js:314 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:349 +#: templates/js/translated/stock.js:350 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: templates/js/translated/stock.js:362 +#: templates/js/translated/stock.js:363 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:368 +#: templates/js/translated/stock.js:369 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:439 +#: templates/js/translated/stock.js:440 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:459 +#: templates/js/translated/stock.js:460 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:475 +#: templates/js/translated/stock.js:476 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:480 +#: templates/js/translated/stock.js:481 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:501 +#: templates/js/translated/stock.js:502 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:543 +#: templates/js/translated/stock.js:544 msgid "Create another item after this one" msgstr "" -#: templates/js/translated/stock.js:555 +#: templates/js/translated/stock.js:556 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:568 +#: templates/js/translated/stock.js:569 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:593 +#: templates/js/translated/stock.js:594 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:597 templates/js/translated/stock.js:598 +#: templates/js/translated/stock.js:598 templates/js/translated/stock.js:599 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:614 +#: templates/js/translated/stock.js:615 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:634 +#: templates/js/translated/stock.js:635 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:643 +#: templates/js/translated/stock.js:644 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:751 +#: templates/js/translated/stock.js:752 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:753 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:829 +#: templates/js/translated/stock.js:830 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:830 +#: templates/js/translated/stock.js:831 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:832 +#: templates/js/translated/stock.js:833 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:833 +#: templates/js/translated/stock.js:834 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:929 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:929 +#: templates/js/translated/stock.js:930 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:1024 +#: templates/js/translated/stock.js:1027 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:1025 +#: templates/js/translated/stock.js:1028 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:1031 +#: templates/js/translated/stock.js:1034 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:1032 +#: templates/js/translated/stock.js:1035 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:1036 +#: templates/js/translated/stock.js:1039 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:1037 +#: templates/js/translated/stock.js:1040 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:1041 +#: templates/js/translated/stock.js:1044 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:1042 users/models.py:396 +#: templates/js/translated/stock.js:1045 users/models.py:396 msgid "Add" msgstr "添加" -#: templates/js/translated/stock.js:1046 +#: templates/js/translated/stock.js:1049 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1146 +#: templates/js/translated/stock.js:1148 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1180 templates/js/translated/stock.js:3299 +#: templates/js/translated/stock.js:1164 +#, fuzzy +#| msgid "Barcode" +msgid "Adjust batch code" +msgstr "条形码" + +#: templates/js/translated/stock.js:1174 +#, fuzzy +#| msgid "Part packaging" +msgid "Adjust packaging" +msgstr "商品打包" + +#: templates/js/translated/stock.js:1252 templates/js/translated/stock.js:3380 msgid "Select Stock Items" msgstr "选择库存项" -#: templates/js/translated/stock.js:1181 +#: templates/js/translated/stock.js:1253 msgid "Select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1227 +#: templates/js/translated/stock.js:1299 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1363 +#: templates/js/translated/stock.js:1444 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1365 +#: templates/js/translated/stock.js:1446 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1370 +#: templates/js/translated/stock.js:1451 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1450 +#: templates/js/translated/stock.js:1531 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1453 +#: templates/js/translated/stock.js:1534 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1476 +#: templates/js/translated/stock.js:1537 +msgid "Edit test result" +msgstr "" + +#: templates/js/translated/stock.js:1538 templates/js/translated/stock.js:1812 +msgid "Delete test result" +msgstr "" + +#: templates/js/translated/stock.js:1557 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1540 +#: templates/js/translated/stock.js:1621 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1553 +#: templates/js/translated/stock.js:1634 msgid "Test started" msgstr "" -#: templates/js/translated/stock.js:1562 +#: templates/js/translated/stock.js:1643 msgid "Test finished" msgstr "" -#: templates/js/translated/stock.js:1716 +#: templates/js/translated/stock.js:1797 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1736 +#: templates/js/translated/stock.js:1817 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1768 +#: templates/js/translated/stock.js:1849 msgid "In production" msgstr "正在生产" -#: templates/js/translated/stock.js:1772 +#: templates/js/translated/stock.js:1853 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1861 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1867 msgid "No stock location set" msgstr "未设置仓储地点" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1923 msgid "Change stock status" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1932 msgid "Merge stock" msgstr "" -#: templates/js/translated/stock.js:1900 +#: templates/js/translated/stock.js:1981 msgid "Delete stock" msgstr "" -#: templates/js/translated/stock.js:1953 +#: templates/js/translated/stock.js:2034 #, fuzzy #| msgid "Stock Items" msgid "stock items" msgstr "库存项" -#: templates/js/translated/stock.js:1958 +#: templates/js/translated/stock.js:2039 #, fuzzy #| msgid "Stock Location" msgid "Scan to location" msgstr "仓储地点" -#: templates/js/translated/stock.js:1969 +#: templates/js/translated/stock.js:2050 #, fuzzy #| msgid "Stock Locations" msgid "Stock Actions" msgstr "仓储地点" -#: templates/js/translated/stock.js:2013 +#: templates/js/translated/stock.js:2094 #, fuzzy #| msgid "Installed into assembly" msgid "Load installed items" msgstr "安装到组装中" -#: templates/js/translated/stock.js:2091 +#: templates/js/translated/stock.js:2172 msgid "Stock item is in production" msgstr "库存品正在生产" -#: templates/js/translated/stock.js:2096 +#: templates/js/translated/stock.js:2177 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:2099 +#: templates/js/translated/stock.js:2180 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:2102 +#: templates/js/translated/stock.js:2183 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:2104 +#: templates/js/translated/stock.js:2185 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:2106 +#: templates/js/translated/stock.js:2187 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:2109 +#: templates/js/translated/stock.js:2190 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:2111 +#: templates/js/translated/stock.js:2192 #, fuzzy #| msgid "Accept as consumed by this build order" msgid "Stock item has been consumed by a build order" msgstr "接受此构建订单所消耗的内容" -#: templates/js/translated/stock.js:2115 +#: templates/js/translated/stock.js:2196 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:2117 +#: templates/js/translated/stock.js:2198 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:2122 +#: templates/js/translated/stock.js:2203 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:2124 +#: templates/js/translated/stock.js:2205 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:2126 +#: templates/js/translated/stock.js:2207 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:2130 +#: templates/js/translated/stock.js:2211 #: templates/js/translated/table_filters.js:350 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:2295 +#: templates/js/translated/stock.js:2376 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2342 +#: templates/js/translated/stock.js:2423 #, fuzzy #| msgid "Stock Source" msgid "Stock Value" msgstr "库存来源" -#: templates/js/translated/stock.js:2470 +#: templates/js/translated/stock.js:2551 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2654 #, fuzzy #| msgid "Stock Locations" msgid "stock locations" msgstr "仓储地点" -#: templates/js/translated/stock.js:2728 +#: templates/js/translated/stock.js:2809 #, fuzzy #| msgid "Stock Locations" msgid "Load Sublocations" msgstr "仓储地点" -#: templates/js/translated/stock.js:2846 +#: templates/js/translated/stock.js:2927 msgid "Details" msgstr "详情" -#: templates/js/translated/stock.js:2850 +#: templates/js/translated/stock.js:2931 #, fuzzy #| msgid "Change" msgid "No changes" msgstr "更改" -#: templates/js/translated/stock.js:2862 +#: templates/js/translated/stock.js:2943 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/stock.js:2965 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2901 +#: templates/js/translated/stock.js:2982 #, fuzzy #| msgid "Sales Order Settings" msgid "Build order no longer exists" msgstr "销售订单设置" -#: templates/js/translated/stock.js:2916 +#: templates/js/translated/stock.js:2997 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2933 +#: templates/js/translated/stock.js:3014 #, fuzzy #| msgid "Sales Order Settings" msgid "Sales Order no longer exists" msgstr "销售订单设置" -#: templates/js/translated/stock.js:2950 +#: templates/js/translated/stock.js:3031 msgid "Return Order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2969 +#: templates/js/translated/stock.js:3050 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2987 +#: templates/js/translated/stock.js:3068 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:3005 +#: templates/js/translated/stock.js:3086 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:3013 +#: templates/js/translated/stock.js:3094 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:3085 +#: templates/js/translated/stock.js:3166 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:3139 templates/js/translated/stock.js:3175 +#: templates/js/translated/stock.js:3220 templates/js/translated/stock.js:3256 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:3197 +#: templates/js/translated/stock.js:3278 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:3218 +#: templates/js/translated/stock.js:3299 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:3219 +#: templates/js/translated/stock.js:3300 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:3221 +#: templates/js/translated/stock.js:3302 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:3222 +#: templates/js/translated/stock.js:3303 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:3223 +#: templates/js/translated/stock.js:3304 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:3224 +#: templates/js/translated/stock.js:3305 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:3237 +#: templates/js/translated/stock.js:3318 msgid "Select part to install" msgstr "" -#: templates/js/translated/stock.js:3300 +#: templates/js/translated/stock.js:3381 #, fuzzy #| msgid "Select Stock Items" msgid "Select one or more stock items" msgstr "选择库存项" -#: templates/js/translated/stock.js:3313 +#: templates/js/translated/stock.js:3394 #, fuzzy #| msgid "Select Stock Items" msgid "Selected stock items" msgstr "选择库存项" -#: templates/js/translated/stock.js:3317 +#: templates/js/translated/stock.js:3398 #, fuzzy #| msgid "Stock Settings" msgid "Change Stock Status" @@ -15853,6 +16100,9 @@ msgstr "编辑项目权限" msgid "Permission to delete items" msgstr "删除项目权限" +#~ msgid "Allocate Stock to Build" +#~ msgstr "为生产分配库存" + #, fuzzy #~| msgid "Select Label Template" #~ msgid "Default part label template" diff --git a/src/frontend/src/locales/ar/messages.po b/src/frontend/src/locales/ar/messages.po index faf74488b5..48f6911b13 100644 --- a/src/frontend/src/locales/ar/messages.po +++ b/src/frontend/src/locales/ar/messages.po @@ -1,11 +1,22 @@ msgid "" msgstr "" -"POT-Creation-Date: 2024-07-11 23:23+0000\n" +"POT-Creation-Date: 2023-06-09 22:10+0200\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: @lingui/cli\n" "Language: ar\n" +"Project-Id-Version: inventree\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2024-07-17 16:39\n" +"Last-Translator: \n" +"Language-Team: Arabic\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" +"X-Crowdin-Project: inventree\n" +"X-Crowdin-Project-ID: 452300\n" +"X-Crowdin-Language: ar\n" +"X-Crowdin-File: /[inventree.InvenTree] l10/src/frontend/src/locales/en/messages.po\n" +"X-Crowdin-File-ID: 205\n" #: src/components/Boundary.tsx:12 msgid "Error rendering component" @@ -43,17 +54,17 @@ msgstr "" #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:516 -#: src/components/forms/fields/ApiFormField.tsx:330 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:390 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" @@ -120,15 +131,15 @@ msgstr "" msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -141,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:213 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -174,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:585 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -200,74 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/ParametricPartTable.tsx:227 -#: src/tables/part/PartTable.tsx:180 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:246 -#: src/tables/part/PartTable.tsx:250 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:440 -#: src/tables/bom/BomTable.tsx:381 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -295,6 +272,10 @@ msgstr "" msgid "Code" msgstr "" +#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:44 +#~ msgid "Failed to parse error response from server." +#~ msgstr "Failed to parse error response from server." + #: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:81 msgid "Preview not available, click \"Reload Preview\"." msgstr "" @@ -320,6 +301,10 @@ msgstr "" msgid "Are you sure you want to Save & Reload the preview?" msgstr "" +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 +#~ msgid "Save & Reload preview?" +#~ msgstr "Save & Reload preview?" + #: src/components/editors/TemplateEditor/TemplateEditor.tsx:153 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" msgstr "" @@ -344,10 +329,18 @@ msgstr "" msgid "Use the currently stored template from the server" msgstr "" +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263 +#~ msgid "Save & Reload preview" +#~ msgstr "Save & Reload preview" + #: src/components/editors/TemplateEditor/TemplateEditor.tsx:271 msgid "Save the current template and reload the preview" msgstr "" +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:322 +#~ msgid "to preview" +#~ msgstr "to preview" + #: src/components/editors/TemplateEditor/TemplateEditor.tsx:329 msgid "Select instance to preview" msgstr "" @@ -404,28 +397,36 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:276 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" -#: src/components/forms/ApiForm.tsx:623 +#: src/components/forms/ApiForm.tsx:487 +#~ msgid "Form Errors Exist" +#~ msgstr "Form Errors Exist" + +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:643 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:316 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" msgstr "" +#: src/components/forms/AuthenticationForm.tsx:48 +#: src/components/forms/AuthenticationForm.tsx:74 +#: src/functions/auth.tsx:83 +#~ msgid "Check your your input and try again." +#~ msgstr "Check your your input and try again." + #: src/components/forms/AuthenticationForm.tsx:51 msgid "Login successful" msgstr "" @@ -434,6 +435,14 @@ msgstr "" msgid "Logged in successfully" msgstr "" +#: src/components/forms/AuthenticationForm.tsx:52 +#~ msgid "Welcome back!" +#~ msgstr "Welcome back!" + +#: src/components/forms/AuthenticationForm.tsx:53 +#~ msgid "Login successfull" +#~ msgstr "Login successfull" + #: src/components/forms/AuthenticationForm.tsx:58 msgid "Login failed" msgstr "" @@ -441,12 +450,17 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" +#: src/components/forms/AuthenticationForm.tsx:65 +#: src/functions/auth.tsx:74 +#~ msgid "Mail delivery successfull" +#~ msgstr "Mail delivery successfull" + #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -488,6 +502,10 @@ msgstr "" msgid "Reset password" msgstr "" +#: src/components/forms/AuthenticationForm.tsx:131 +#~ msgid "Log in" +#~ msgstr "Log in" + #: src/components/forms/AuthenticationForm.tsx:134 #: src/components/forms/AuthenticationForm.tsx:233 #: src/pages/Auth/Reset.tsx:31 @@ -501,6 +519,10 @@ msgstr "" msgid "We will send you a link to login - if you are registered" msgstr "" +#: src/components/forms/AuthenticationForm.tsx:136 +#~ msgid "I will use username and password" +#~ msgstr "I will use username and password" + #: src/components/forms/AuthenticationForm.tsx:151 msgid "Send me an email" msgstr "" @@ -566,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -634,127 +656,176 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" +#: src/components/images/DetailsImage.tsx:252 +#~ msgid "Select image" +#~ msgstr "Select image" + #: src/components/images/Thumbnail.tsx:12 #: src/components/images/Thumbnail.tsx:58 msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -765,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 +#: src/components/items/ActionDropdown.tsx:121 #: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1023,6 +1094,10 @@ msgstr "" msgid "Database" msgstr "" +#: src/components/modals/ServerInfoModal.tsx:38 +#~ msgid "Bebug Mode" +#~ msgstr "Bebug Mode" + #: src/components/modals/ServerInfoModal.tsx:47 msgid "Debug Mode" msgstr "" @@ -1098,6 +1173,11 @@ msgstr "" msgid "Nothing found..." msgstr "" +#: src/components/nav/MainMenu.tsx:40 +#: src/pages/Index/Profile/Profile.tsx:15 +#~ msgid "Profile" +#~ msgstr "Profile" + #: src/components/nav/MainMenu.tsx:42 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:26 msgid "Settings" @@ -1110,7 +1190,7 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:318 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" @@ -1120,6 +1200,14 @@ msgstr "" msgid "Admin Center" msgstr "" +#: src/components/nav/MainMenu.tsx:68 +#~ msgid "Current language {locale}" +#~ msgstr "Current language {locale}" + +#: src/components/nav/MainMenu.tsx:71 +#~ msgid "Switch to pseudo language" +#~ msgstr "Switch to pseudo language" + #: src/components/nav/MainMenu.tsx:77 msgid "Logout" msgstr "" @@ -1165,7 +1253,7 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 #: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 @@ -1173,17 +1261,17 @@ msgstr "" msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1192,51 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:202 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 #: src/pages/build/BuildDetail.tsx:87 -#: src/pages/part/PartDetail.tsx:872 -#: src/tables/build/BuildAllocatedStockTable.tsx:44 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1250,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1271,10 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 -#: src/tables/build/BuildAllocatedStockTable.tsx:85 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1284,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1301,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1326,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1397,16 +1486,16 @@ msgstr "" #: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" #: src/components/render/ModelType.tsx:139 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" @@ -1421,16 +1510,16 @@ msgstr "" #: src/components/render/ModelType.tsx:152 #: src/pages/build/BuildDetail.tsx:135 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" #: src/components/render/ModelType.tsx:153 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" @@ -1450,7 +1539,7 @@ msgid "Return Order" msgstr "" #: src/components/render/ModelType.tsx:169 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" @@ -1467,9 +1556,9 @@ msgid "Addresses" msgstr "" #: src/components/render/ModelType.tsx:184 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" @@ -1537,37 +1626,58 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 +#: src/pages/stock/StockDetail.tsx:355 #: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" msgstr "" +#: src/components/settings/SettingItem.tsx:47 +#: src/components/settings/SettingItem.tsx:100 +#~ msgid "{0} updated successfully" +#~ msgstr "{0} updated successfully" + #: src/components/settings/SettingList.tsx:67 msgid "Edit Setting" msgstr "" @@ -1589,6 +1699,362 @@ msgstr "" msgid "No settings specified" msgstr "" +#: src/components/tables/FilterGroup.tsx:29 +#~ msgid "Add table filter" +#~ msgstr "Add table filter" + +#: src/components/tables/FilterGroup.tsx:44 +#~ msgid "Clear all filters" +#~ msgstr "Clear all filters" + +#: src/components/tables/FilterGroup.tsx:51 +#~ msgid "Add filter" +#~ msgstr "Add filter" + +#: src/components/tables/FilterSelectModal.tsx:56 +#~ msgid "True" +#~ msgstr "True" + +#: src/components/tables/FilterSelectModal.tsx:57 +#~ msgid "False" +#~ msgstr "False" + +#: src/components/tables/FilterSelectModal.tsx:143 +#~ msgid "Add Table Filter" +#~ msgstr "Add Table Filter" + +#: src/components/tables/FilterSelectModal.tsx:145 +#~ msgid "Select from the available filters" +#~ msgstr "Select from the available filters" + +#: src/components/tables/bom/BomTable.tsx:113 +#~ msgid "Substitutes" +#~ msgstr "Substitutes" + +#: src/components/tables/bom/BomTable.tsx:200 +#~ msgid "Validate" +#~ msgstr "Validate" + +#: src/components/tables/bom/BomTable.tsx:250 +#~ msgid "Has Available Stock" +#~ msgstr "Has Available Stock" + +#: src/components/tables/bom/UsedInTable.tsx:40 +#~ msgid "Required Part" +#~ msgstr "Required Part" + +#: src/components/tables/build/BuildLineTable.tsx:152 +#~ msgid "Required Quantity" +#~ msgstr "Required Quantity" + +#: src/components/tables/build/BuildOrderTable.tsx:52 +#~ msgid "Progress" +#~ msgstr "Progress" + +#: src/components/tables/build/BuildOrderTable.tsx:65 +#~ msgid "Priority" +#~ msgstr "Priority" + +#: src/components/tables/company/AddressTable.tsx:68 +#~ msgid "Postal Code" +#~ msgstr "Postal Code" + +#: src/components/tables/company/AddressTable.tsx:74 +#~ msgid "City" +#~ msgstr "City" + +#: src/components/tables/company/AddressTable.tsx:80 +#~ msgid "State / Province" +#~ msgstr "State / Province" + +#: src/components/tables/company/AddressTable.tsx:86 +#~ msgid "Country" +#~ msgstr "Country" + +#: src/components/tables/company/AddressTable.tsx:92 +#~ msgid "Courier Notes" +#~ msgstr "Courier Notes" + +#: src/components/tables/company/AddressTable.tsx:98 +#~ msgid "Internal Notes" +#~ msgstr "Internal Notes" + +#: src/components/tables/company/AddressTable.tsx:130 +#~ msgid "Address updated" +#~ msgstr "Address updated" + +#: src/components/tables/company/AddressTable.tsx:142 +#~ msgid "Address deleted" +#~ msgstr "Address deleted" + +#: src/components/tables/company/CompanyTable.tsx:32 +#~ msgid "Company Name" +#~ msgstr "Company Name" + +#: src/components/tables/company/ContactTable.tsx:41 +#~ msgid "Phone" +#~ msgstr "Phone" + +#: src/components/tables/company/ContactTable.tsx:53 +#~ msgid "Role" +#~ msgstr "Role" + +#: src/components/tables/company/ContactTable.tsx:78 +#~ msgid "Contact updated" +#~ msgstr "Contact updated" + +#: src/components/tables/company/ContactTable.tsx:90 +#~ msgid "Contact deleted" +#~ msgstr "Contact deleted" + +#: src/components/tables/company/ContactTable.tsx:92 +#~ msgid "Are you sure you want to delete this contact?" +#~ msgstr "Are you sure you want to delete this contact?" + +#: src/components/tables/company/ContactTable.tsx:108 +#~ msgid "Create Contact" +#~ msgstr "Create Contact" + +#: src/components/tables/company/ContactTable.tsx:110 +#~ msgid "Contact created" +#~ msgstr "Contact created" + +#: src/components/tables/general/AttachmentTable.tsx:47 +#~ msgid "Comment" +#~ msgstr "Comment" + +#: src/components/tables/part/PartCategoryTable.tsx:122 +#~ msgid "Part category updated" +#~ msgstr "Part category updated" + +#: src/components/tables/part/PartParameterTable.tsx:41 +#~ msgid "Parameter" +#~ msgstr "Parameter" + +#: src/components/tables/part/PartParameterTable.tsx:114 +#~ msgid "Part parameter updated" +#~ msgstr "Part parameter updated" + +#: src/components/tables/part/PartParameterTable.tsx:130 +#~ msgid "Part parameter deleted" +#~ msgstr "Part parameter deleted" + +#: src/components/tables/part/PartParameterTable.tsx:132 +#~ msgid "Are you sure you want to remove this parameter?" +#~ msgstr "Are you sure you want to remove this parameter?" + +#: src/components/tables/part/PartParameterTable.tsx:159 +#~ msgid "Part parameter added" +#~ msgstr "Part parameter added" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:67 +#~ msgid "Choices" +#~ msgstr "Choices" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:83 +#~ msgid "Remove parameter template" +#~ msgstr "Remove parameter template" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:84 +#~ msgid "Parameter template updated" +#~ msgstr "Parameter template updated" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:96 +#~ msgid "Parameter template deleted" +#~ msgstr "Parameter template deleted" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:98 +#~ msgid "Are you sure you want to remove this parameter template?" +#~ msgstr "Are you sure you want to remove this parameter template?" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:110 +#~ msgid "Create Parameter Template" +#~ msgstr "Create Parameter Template" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:112 +#~ msgid "Parameter template created" +#~ msgstr "Parameter template created" + +#: src/components/tables/part/PartTable.tsx:211 +#~ msgid "Detail" +#~ msgstr "Detail" + +#: src/components/tables/part/PartTestTemplateTable.tsx:30 +#~ msgid "Test Name" +#~ msgstr "Test Name" + +#: src/components/tables/part/PartTestTemplateTable.tsx:86 +#~ msgid "Template updated" +#~ msgstr "Template updated" + +#: src/components/tables/part/PartTestTemplateTable.tsx:98 +#~ msgid "Test Template deleted" +#~ msgstr "Test Template deleted" + +#: src/components/tables/part/PartTestTemplateTable.tsx:115 +#~ msgid "Create Test Template" +#~ msgstr "Create Test Template" + +#: src/components/tables/part/PartTestTemplateTable.tsx:117 +#~ msgid "Template created" +#~ msgstr "Template created" + +#: src/components/tables/part/RelatedPartTable.tsx:79 +#~ msgid "Related Part" +#~ msgstr "Related Part" + +#: src/components/tables/part/RelatedPartTable.tsx:82 +#~ msgid "Related part added" +#~ msgstr "Related part added" + +#: src/components/tables/part/RelatedPartTable.tsx:114 +#~ msgid "Related part deleted" +#~ msgstr "Related part deleted" + +#: src/components/tables/part/RelatedPartTable.tsx:115 +#~ msgid "Are you sure you want to remove this relationship?" +#~ msgstr "Are you sure you want to remove this relationship?" + +#: src/components/tables/plugin/PluginListTable.tsx:191 +#~ msgid "Installation path" +#~ msgstr "Installation path" + +#: src/components/tables/purchasing/PurchaseOrderLineItemTable.tsx:55 +#~ msgid "Receive" +#~ msgstr "Receive" + +#: src/components/tables/purchasing/PurchaseOrderLineItemTable.tsx:81 +#~ msgid "Line item updated" +#~ msgstr "Line item updated" + +#: src/components/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 +#~ msgid "Line item added" +#~ msgstr "Line item added" + +#: src/components/tables/settings/CustomUnitsTable.tsx:37 +#~ msgid "Definition" +#~ msgstr "Definition" + +#: src/components/tables/settings/CustomUnitsTable.tsx:43 +#~ msgid "Symbol" +#~ msgstr "Symbol" + +#: src/components/tables/settings/CustomUnitsTable.tsx:59 +#~ msgid "Edit custom unit" +#~ msgstr "Edit custom unit" + +#: src/components/tables/settings/CustomUnitsTable.tsx:66 +#~ msgid "Custom unit updated" +#~ msgstr "Custom unit updated" + +#: src/components/tables/settings/CustomUnitsTable.tsx:76 +#~ msgid "Delete custom unit" +#~ msgstr "Delete custom unit" + +#: src/components/tables/settings/CustomUnitsTable.tsx:77 +#~ msgid "Custom unit deleted" +#~ msgstr "Custom unit deleted" + +#: src/components/tables/settings/CustomUnitsTable.tsx:79 +#~ msgid "Are you sure you want to remove this custom unit?" +#~ msgstr "Are you sure you want to remove this custom unit?" + +#: src/components/tables/settings/CustomUnitsTable.tsx:97 +#~ msgid "Custom unit created" +#~ msgstr "Custom unit created" + +#: src/components/tables/settings/GroupTable.tsx:45 +#~ msgid "Group updated" +#~ msgstr "Group updated" + +#: src/components/tables/settings/GroupTable.tsx:131 +#~ msgid "Added group" +#~ msgstr "Added group" + +#: src/components/tables/settings/ProjectCodeTable.tsx:49 +#~ msgid "Edit project code" +#~ msgstr "Edit project code" + +#: src/components/tables/settings/ProjectCodeTable.tsx:56 +#~ msgid "Project code updated" +#~ msgstr "Project code updated" + +#: src/components/tables/settings/ProjectCodeTable.tsx:66 +#~ msgid "Delete project code" +#~ msgstr "Delete project code" + +#: src/components/tables/settings/ProjectCodeTable.tsx:67 +#~ msgid "Project code deleted" +#~ msgstr "Project code deleted" + +#: src/components/tables/settings/ProjectCodeTable.tsx:69 +#~ msgid "Are you sure you want to remove this project code?" +#~ msgstr "Are you sure you want to remove this project code?" + +#: src/components/tables/settings/ProjectCodeTable.tsx:88 +#~ msgid "Added project code" +#~ msgstr "Added project code" + +#: src/components/tables/settings/UserDrawer.tsx:92 +#~ msgid "User permission changed successfully" +#~ msgstr "User permission changed successfully" + +#: src/components/tables/settings/UserDrawer.tsx:93 +#~ msgid "Some changes might only take effect after the user refreshes their login." +#~ msgstr "Some changes might only take effect after the user refreshes their login." + +#: src/components/tables/settings/UserDrawer.tsx:118 +#~ msgid "Changed user active status successfully" +#~ msgstr "Changed user active status successfully" + +#: src/components/tables/settings/UserDrawer.tsx:119 +#~ msgid "Set to {active}" +#~ msgstr "Set to {active}" + +#: src/components/tables/settings/UserDrawer.tsx:142 +#~ msgid "User details for {0}" +#~ msgstr "User details for {0}" + +#: src/components/tables/settings/UserDrawer.tsx:176 +#~ msgid "Rights" +#~ msgstr "Rights" + +#: src/components/tables/settings/UserTable.tsx:106 +#~ msgid "User updated" +#~ msgstr "User updated" + +#: src/components/tables/settings/UserTable.tsx:117 +#~ msgid "user deleted" +#~ msgstr "user deleted" + +#: src/components/tables/settings/UserTable.tsx:168 +#~ msgid "First Name" +#~ msgstr "First Name" + +#: src/components/tables/settings/UserTable.tsx:173 +#~ msgid "Last Name" +#~ msgstr "Last Name" + +#: src/components/tables/settings/UserTable.tsx:186 +#~ msgid "Staff" +#~ msgstr "Staff" + +#: src/components/tables/settings/UserTable.tsx:190 +#~ msgid "Superuser" +#~ msgstr "Superuser" + +#: src/components/tables/stock/StockItemTable.tsx:247 +#~ msgid "Test Filter" +#~ msgstr "Test Filter" + +#: src/components/tables/stock/StockItemTable.tsx:248 +#~ msgid "This is a test filter" +#~ msgstr "This is a test filter" + +#: src/components/tables/stock/StockLocationTable.tsx:145 +#~ msgid "Stock location updated" +#~ msgstr "Stock location updated" + #: src/components/widgets/DisplayWidget.tsx:11 #: src/pages/Index/Settings/AccountSettings/DisplaySettingsPanel.tsx:17 msgid "Display Settings" @@ -1620,6 +2086,14 @@ msgstr "" msgid "Getting started" msgstr "" +#: src/components/widgets/MarkdownEditor.tsx:108 +#~ msgid "Failed to upload image" +#~ msgstr "Failed to upload image" + +#: src/components/widgets/MarkdownEditor.tsx:146 +#~ msgid "Notes saved" +#~ msgstr "Notes saved" + #: src/components/widgets/WidgetLayout.tsx:166 msgid "Layout" msgstr "" @@ -1681,106 +2155,110 @@ msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Farsi / Persian" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "Finnish" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "French" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hebrew" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hindi" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Hungarian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Italian" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Japanese" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Korean" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Latvian" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Dutch" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Norwegian" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Polish" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Portuguese (Brazilian)" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Romanian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Russian" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovak" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Slovenian" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Swedish" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Thai" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Turkish" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Ukrainian" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Vietnamese" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 -msgid "Chinese (Simplified)" +msgid "Vietnamese" msgstr "" #: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -1861,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -1909,6 +2387,14 @@ msgstr "" msgid "Current News" msgstr "" +#: src/defaults/defaultHostList.tsx:8 +#~ msgid "InvenTree Demo" +#~ msgstr "InvenTree Demo" + +#: src/defaults/defaultHostList.tsx:16 +#~ msgid "Local Server" +#~ msgstr "Local Server" + #: src/defaults/links.tsx:11 #: src/pages/company/CompanyDetail.tsx:94 msgid "Website" @@ -1925,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -1938,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -1980,23 +2466,143 @@ msgstr "" msgid "Frequently asked questions" msgstr "" +#: src/defaults/links.tsx:76 +#~ msgid "Instance" +#~ msgstr "Instance" + #: src/defaults/links.tsx:79 #: src/defaults/links.tsx:116 msgid "System Information" msgstr "" +#: src/defaults/links.tsx:83 +#~ msgid "InvenTree" +#~ msgstr "InvenTree" + +#: src/defaults/links.tsx:117 +#~ msgid "Licenses for packages used by InvenTree" +#~ msgstr "Licenses for packages used by InvenTree" + #: src/defaults/links.tsx:128 msgid "Licenses" msgstr "" +#: src/defaults/menuItems.tsx:7 +#~ msgid "Open sourcea" +#~ msgstr "Open sourcea" + +#: src/defaults/menuItems.tsx:9 +#~ msgid "Open source" +#~ msgstr "Open source" + +#: src/defaults/menuItems.tsx:10 +#~ msgid "Start page of your instance." +#~ msgstr "Start page of your instance." + +#: src/defaults/menuItems.tsx:10 +#~ msgid "This Pokémon’s cry is very loud and distracting" +#~ msgstr "This Pokémon’s cry is very loud and distracting" + +#: src/defaults/menuItems.tsx:12 +#~ msgid "This Pokémon’s cry is very loud and distracting and more and more and more" +#~ msgstr "This Pokémon’s cry is very loud and distracting and more and more and more" + +#: src/defaults/menuItems.tsx:15 +#~ msgid "Profile page" +#~ msgstr "Profile page" + #: src/defaults/menuItems.tsx:17 msgid "User attributes and design settings." msgstr "" +#: src/defaults/menuItems.tsx:21 +#~ msgid "Free for everyone" +#~ msgstr "Free for everyone" + +#: src/defaults/menuItems.tsx:22 +#~ msgid "The fluid of Smeargle’s tail secretions changes" +#~ msgstr "The fluid of Smeargle’s tail secretions changes" + #: src/defaults/menuItems.tsx:23 msgid "View for interactive scanning and multiple actions." msgstr "" +#: src/defaults/menuItems.tsx:24 +#~ msgid "The fluid of Smeargle’s tail secretions changes in the intensity" +#~ msgstr "The fluid of Smeargle’s tail secretions changes in the intensity" + +#: src/defaults/menuItems.tsx:32 +#~ msgid "abc" +#~ msgstr "abc" + +#: src/defaults/menuItems.tsx:37 +#~ msgid "Random image" +#~ msgstr "Random image" + +#: src/defaults/menuItems.tsx:40 +#~ msgid "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Name liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assume. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, At accusam aliquyam diam diam dolore dolores duo eirmod eos erat, et nonumy sed tempor et et invidunt justo labore Stet clita ea et gubergren, kasd magna no rebum. sanctus sea sed takimata ut vero voluptua. est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor" +#~ msgstr "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Name liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assume. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, At accusam aliquyam diam diam dolore dolores duo eirmod eos erat, et nonumy sed tempor et et invidunt justo labore Stet clita ea et gubergren, kasd magna no rebum. sanctus sea sed takimata ut vero voluptua. est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor" + +#: src/defaults/menuItems.tsx:105 +#~ msgid "Yanma is capable of seeing 360 degrees without" +#~ msgstr "Yanma is capable of seeing 360 degrees without" + +#: src/defaults/menuItems.tsx:111 +#~ msgid "The shell’s rounded shape and the grooves on its." +#~ msgstr "The shell’s rounded shape and the grooves on its." + +#: src/defaults/menuItems.tsx:116 +#~ msgid "Analytics" +#~ msgstr "Analytics" + +#: src/defaults/menuItems.tsx:118 +#~ msgid "This Pokémon uses its flying ability to quickly chase" +#~ msgstr "This Pokémon uses its flying ability to quickly chase" + +#: src/defaults/menuItems.tsx:125 +#~ msgid "Combusken battles with the intensely hot flames it spews" +#~ msgstr "Combusken battles with the intensely hot flames it spews" + +#: src/forms/AttachmentForms.tsx:57 +#~ msgid "Add File" +#~ msgstr "Add File" + +#: src/forms/AttachmentForms.tsx:57 +#~ msgid "Add Link" +#~ msgstr "Add Link" + +#: src/forms/AttachmentForms.tsx:58 +#~ msgid "File added" +#~ msgstr "File added" + +#: src/forms/AttachmentForms.tsx:58 +#~ msgid "Link added" +#~ msgstr "Link added" + +#: src/forms/AttachmentForms.tsx:99 +#~ msgid "Edit File" +#~ msgstr "Edit File" + +#: src/forms/AttachmentForms.tsx:99 +#~ msgid "Edit Link" +#~ msgstr "Edit Link" + +#: src/forms/AttachmentForms.tsx:100 +#~ msgid "File updated" +#~ msgstr "File updated" + +#: src/forms/AttachmentForms.tsx:100 +#~ msgid "Link updated" +#~ msgstr "Link updated" + +#: src/forms/AttachmentForms.tsx:125 +#~ msgid "Attachment deleted" +#~ msgstr "Attachment deleted" + +#: src/forms/AttachmentForms.tsx:128 +#~ msgid "Are you sure you want to delete this attachment?" +#~ msgstr "Are you sure you want to delete this attachment?" + #: src/forms/BuildForms.tsx:146 msgid "Next serial number" msgstr "" @@ -2038,222 +2644,353 @@ msgstr "" msgid "Build outputs have been cancelled" msgstr "" -#: src/forms/PartForms.tsx:103 +#: src/forms/CompanyForms.tsx:150 +#~ msgid "Company updated" +#~ msgstr "Company updated" + +#: src/forms/PartForms.tsx:106 +#~ msgid "Create Part" +#~ msgstr "Create Part" + +#: src/forms/PartForms.tsx:108 +#~ msgid "Part created" +#~ msgstr "Part created" + +#: src/forms/PartForms.tsx:123 msgid "Parent part category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PartForms.tsx:129 +#~ msgid "Part updated" +#~ msgstr "Part updated" + +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 -msgid "Receive Line Items" +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" msgstr "" -#: src/forms/StockForms.tsx:101 -msgid "Add given quantity as packs instead of individual items" +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" msgstr "" -#: src/forms/StockForms.tsx:114 -msgid "Enter initial quantity for this stock item" +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" msgstr "" -#: src/forms/StockForms.tsx:121 -msgid "Serial Numbers" +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" msgstr "" -#: src/forms/StockForms.tsx:122 -msgid "Enter serial numbers for new stock (or leave blank)" +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" msgstr "" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:414 -#: src/tables/stock/StockItemTable.tsx:531 -msgid "Add Stock Item" +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" msgstr "" -#: src/forms/StockForms.tsx:339 -msgid "Loading..." +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" msgstr "" -#: src/forms/StockForms.tsx:381 -msgid "Move to default location" -msgstr "" - -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:322 -msgid "In Stock" -msgstr "" - -#: src/forms/StockForms.tsx:449 -msgid "Move" -msgstr "" - -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 #: src/tables/RowActions.tsx:149 msgid "Actions" msgstr "" -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/PurchaseOrderForms.tsx:655 +msgid "Receive Line Items" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/StockForms.tsx:106 +msgid "Add given quantity as packs instead of individual items" +msgstr "" + +#: src/forms/StockForms.tsx:110 +#~ msgid "Create Stock Item" +#~ msgstr "Create Stock Item" + +#: src/forms/StockForms.tsx:119 +msgid "Enter initial quantity for this stock item" +msgstr "" + +#: src/forms/StockForms.tsx:126 +msgid "Serial Numbers" +msgstr "" + +#: src/forms/StockForms.tsx:127 +msgid "Enter serial numbers for new stock (or leave blank)" +msgstr "" + +#: src/forms/StockForms.tsx:158 +#~ msgid "Stock item updated" +#~ msgstr "Stock item updated" + +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 +msgid "Add Stock Item" +msgstr "" + +#: src/forms/StockForms.tsx:364 +msgid "Loading..." +msgstr "" + +#: src/forms/StockForms.tsx:410 +msgid "Move to default location" +msgstr "" + +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 +msgid "In Stock" +msgstr "" + +#: src/forms/StockForms.tsx:501 +msgid "Move" +msgstr "" + +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:34 +#~ msgid "Error fetching token from server." +#~ msgstr "Error fetching token from server." + +#: src/functions/auth.tsx:36 +#~ msgid "Logout successfull" +#~ msgstr "Logout successfull" + +#: src/functions/auth.tsx:60 +#~ msgid "See you soon." +#~ msgstr "See you soon." + +#: src/functions/auth.tsx:70 +#~ msgid "Logout successful" +#~ msgstr "Logout successful" + +#: src/functions/auth.tsx:71 +#~ msgid "You have been logged out" +#~ msgstr "You have been logged out" + +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:141 +#~ msgid "Already logged in" +#~ msgstr "Already logged in" + +#: src/functions/auth.tsx:142 +#~ msgid "Found an existing login - using it to log you in." +#~ msgstr "Found an existing login - using it to log you in." + +#: src/functions/auth.tsx:143 +#~ msgid "Found an existing login - welcome back!" +#~ msgstr "Found an existing login - welcome back!" + +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" -#: src/functions/forms.tsx:199 -msgid "Invalid Form" -msgstr "" +#: src/functions/forms.tsx:50 +#~ msgid "Form method not provided" +#~ msgstr "Form method not provided" -#: src/functions/forms.tsx:200 -msgid "method parameter not supplied" -msgstr "" +#: src/functions/forms.tsx:59 +#~ msgid "Response did not contain action data" +#~ msgstr "Response did not contain action data" + +#: src/functions/forms.tsx:182 +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" + +#: src/functions/forms.tsx:183 +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -2312,6 +3049,10 @@ msgstr "" msgid "Register below" msgstr "" +#: src/pages/Auth/Login.tsx:121 +#~ msgid "Edit host options" +#~ msgstr "Edit host options" + #: src/pages/Auth/Logout.tsx:23 msgid "Logging out" msgstr "" @@ -2357,6 +3098,10 @@ msgstr "" msgid "An unexpected error has occurred" msgstr "" +#: src/pages/ErrorPage.tsx:28 +#~ msgid "Sorry, an unexpected error has occurred." +#~ msgstr "Sorry, an unexpected error has occurred." + #: src/pages/Index/Dashboard.tsx:22 msgid "Autoupdate" msgstr "" @@ -2373,6 +3118,142 @@ msgstr "" msgid "This page is a showcase for the possibilities of Platform UI." msgstr "" +#: src/pages/Index/Profile/Profile.tsx:30 +#: src/pages/Index/Profile/Profile.tsx:141 +#~ msgid "Notification Settings" +#~ msgstr "Notification Settings" + +#: src/pages/Index/Profile/Profile.tsx:33 +#~ msgid "Global Settings" +#~ msgstr "Global Settings" + +#: src/pages/Index/Profile/Profile.tsx:47 +#~ msgid "Settings for the current user" +#~ msgstr "Settings for the current user" + +#: src/pages/Index/Profile/Profile.tsx:51 +#~ msgid "Home Page Settings" +#~ msgstr "Home Page Settings" + +#: src/pages/Index/Profile/Profile.tsx:76 +#~ msgid "Search Settings" +#~ msgstr "Search Settings" + +#: src/pages/Index/Profile/Profile.tsx:115 +#: src/pages/Index/Profile/Profile.tsx:211 +#~ msgid "Label Settings" +#~ msgstr "Label Settings" + +#: src/pages/Index/Profile/Profile.tsx:120 +#: src/pages/Index/Profile/Profile.tsx:219 +#~ msgid "Report Settings" +#~ msgstr "Report Settings" + +#: src/pages/Index/Profile/Profile.tsx:142 +#~ msgid "Settings for the notifications" +#~ msgstr "Settings for the notifications" + +#: src/pages/Index/Profile/Profile.tsx:148 +#~ msgid "Global Server Settings" +#~ msgstr "Global Server Settings" + +#: src/pages/Index/Profile/Profile.tsx:149 +#~ msgid "Global Settings for this instance" +#~ msgstr "Global Settings for this instance" + +#: src/pages/Index/Profile/Profile.tsx:153 +#~ msgid "Server Settings" +#~ msgstr "Server Settings" + +#: src/pages/Index/Profile/Profile.tsx:187 +#~ msgid "Login Settings" +#~ msgstr "Login Settings" + +#: src/pages/Index/Profile/Profile.tsx:202 +#~ msgid "Barcode Settings" +#~ msgstr "Barcode Settings" + +#: src/pages/Index/Profile/Profile.tsx:230 +#~ msgid "Part Settings" +#~ msgstr "Part Settings" + +#: src/pages/Index/Profile/Profile.tsx:255 +#~ msgid "Pricing Settings" +#~ msgstr "Pricing Settings" + +#: src/pages/Index/Profile/Profile.tsx:270 +#~ msgid "Stock Settings" +#~ msgstr "Stock Settings" + +#: src/pages/Index/Profile/Profile.tsx:284 +#~ msgid "Build Order Settings" +#~ msgstr "Build Order Settings" + +#: src/pages/Index/Profile/Profile.tsx:289 +#~ msgid "Purchase Order Settings" +#~ msgstr "Purchase Order Settings" + +#: src/pages/Index/Profile/Profile.tsx:300 +#~ msgid "Sales Order Settings" +#~ msgstr "Sales Order Settings" + +#: src/pages/Index/Profile/Profile.tsx:330 +#~ msgid "Plugin Settings for this instance" +#~ msgstr "Plugin Settings for this instance" + +#: src/pages/Index/Profile/SettingsPanel.tsx:27 +#~ msgid "Data is current beeing loaded" +#~ msgstr "Data is current beeing loaded" + +#: src/pages/Index/Profile/SettingsPanel.tsx:69 +#: src/pages/Index/Profile/SettingsPanel.tsx:76 +#~ msgid "Failed to load" +#~ msgstr "Failed to load" + +#: src/pages/Index/Profile/SettingsPanel.tsx:100 +#~ msgid "Show internal names" +#~ msgstr "Show internal names" + +#: src/pages/Index/Profile/SettingsPanel.tsx:148 +#~ msgid "Input {0} is not known" +#~ msgstr "Input {0} is not known" + +#: src/pages/Index/Profile/SettingsPanel.tsx:161 +#~ msgid "Saved changes {0}" +#~ msgstr "Saved changes {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:162 +#~ msgid "Changed to {0}" +#~ msgstr "Changed to {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:176 +#~ msgid "Error while saving {0}" +#~ msgstr "Error while saving {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:177 +#~ msgid "Error was {err}" +#~ msgstr "Error was {err}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:257 +#~ msgid "Plugin: {0}" +#~ msgstr "Plugin: {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:262 +#~ msgid "Method: {0}" +#~ msgstr "Method: {0}" + +#: src/pages/Index/Profile/UserPanel.tsx:85 +#~ msgid "Userinfo" +#~ msgstr "Userinfo" + +#: src/pages/Index/Profile/UserPanel.tsx:122 +#~ msgid "Username: {0}" +#~ msgstr "Username: {0}" + +#: src/pages/Index/Profile/UserTheme.tsx:83 +#~ msgid "Design <0/>" +#~ msgstr "Design <0/>" + #: src/pages/Index/Scan.tsx:216 msgid "Manual input" msgstr "" @@ -2502,6 +3383,14 @@ msgstr "" msgid "Last name" msgstr "" +#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:58 +#~ msgid "First name: {0}" +#~ msgstr "First name: {0}" + +#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:61 +#~ msgid "Last name: {0}" +#~ msgstr "Last name: {0}" + #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:63 msgid "First name:" msgstr "" @@ -2627,6 +3516,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AdminCenter.tsx:30 +#~ msgid "User Management" +#~ msgstr "User Management" + +#: src/pages/Index/Settings/AdminCenter.tsx:91 +#~ msgid "Advanced Amininistrative Options for InvenTree" +#~ msgstr "Advanced Amininistrative Options for InvenTree" + #: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" @@ -2643,6 +3540,10 @@ msgstr "" msgid "Currencies" msgstr "" +#: src/pages/Index/Settings/AdminCenter/Index.tsx:127 +#~ msgid "Templates" +#~ msgstr "Templates" + #: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" @@ -2698,6 +3599,18 @@ msgstr "" msgid "External plugins are not enabled for this InvenTree installation." msgstr "" +#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:33 +#~ msgid "Plugin Error Stack" +#~ msgstr "Plugin Error Stack" + +#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:45 +#~ msgid "Warning" +#~ msgstr "Warning" + +#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:47 +#~ msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." +#~ msgstr "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." + #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:50 msgid "Plugin Errors" msgstr "" @@ -2729,6 +3642,47 @@ msgstr "" msgid "Failed Tasks" msgstr "" +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:39 +#~ msgid "Label" +#~ msgstr "Label" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:67 +#~ msgid "Stock item" +#~ msgstr "Stock item" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:76 +#~ msgid "Build line" +#~ msgstr "Build line" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:88 +#~ msgid "Reports" +#~ msgstr "Reports" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:89 +#: src/pages/build/BuildDetail.tsx:373 +#~ msgid "Report" +#~ msgstr "Report" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:99 +#~ msgid "Purchase order" +#~ msgstr "Purchase order" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:108 +#~ msgid "Sales order" +#~ msgstr "Sales order" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:117 +#~ msgid "Return order" +#~ msgstr "Return order" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:145 +#~ msgid "Tests" +#~ msgstr "Tests" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:154 +#~ msgid "Stock location" +#~ msgstr "Stock location" + #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:18 #: src/tables/settings/UserTable.tsx:135 msgid "Groups" @@ -2754,6 +3708,14 @@ msgstr "" msgid "Pricing" msgstr "" +#: src/pages/Index/Settings/SystemSettings.tsx:118 +#~ msgid "Physical Units" +#~ msgstr "Physical Units" + +#: src/pages/Index/Settings/SystemSettings.tsx:135 +#~ msgid "Exchange Rates" +#~ msgstr "Exchange Rates" + #: src/pages/Index/Settings/SystemSettings.tsx:149 msgid "Labels" msgstr "" @@ -2763,21 +3725,20 @@ msgstr "" msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:231 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 +#: src/pages/Index/Settings/SystemSettings.tsx:242 #: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:321 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" @@ -2801,6 +3762,26 @@ msgstr "" msgid "Switch to System Setting" msgstr "" +#: src/pages/Index/UserSettings.tsx:103 +#~ msgid "User Settings" +#~ msgstr "User Settings" + +#: src/pages/Logged-In.tsx:24 +#~ msgid "Found an exsisting login - using it to log you in." +#~ msgstr "Found an exsisting login - using it to log you in." + +#: src/pages/NotFound.tsx:17 +#~ msgid "Not Found" +#~ msgstr "Not Found" + +#: src/pages/NotFound.tsx:20 +#~ msgid "Sorry, this page is not known or was moved." +#~ msgstr "Sorry, this page is not known or was moved." + +#: src/pages/NotFound.tsx:27 +#~ msgid "Go to the start page" +#~ msgstr "Go to the start page" + #: src/pages/Notifications.tsx:43 msgid "Delete Notifications" msgstr "" @@ -2809,37 +3790,26 @@ msgstr "" msgid "Mark as unread" msgstr "" -#: src/pages/build/BuildDetail.tsx:93 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:291 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" +#: src/pages/build/BuildDetail.tsx:80 +#~ msgid "Build Status" +#~ msgstr "Build Status" #: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 -#: src/tables/build/BuildAllocatedStockTable.tsx:51 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" #: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -2875,10 +3845,10 @@ msgid "Issued By" msgstr "" #: src/pages/build/BuildDetail.tsx:154 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -2892,9 +3862,9 @@ msgid "Created" msgstr "" #: src/pages/build/BuildDetail.tsx:168 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" @@ -2903,6 +3873,12 @@ msgstr "" msgid "Completed" msgstr "" +#: src/pages/build/BuildDetail.tsx:185 +#: src/pages/part/PartDetail.tsx:269 +#: src/pages/stock/StockDetail.tsx:150 +#~ msgid "View part barcode" +#~ msgstr "View part barcode" + #: src/pages/build/BuildDetail.tsx:187 msgid "Source Location" msgstr "" @@ -2911,27 +3887,45 @@ msgstr "" msgid "Any location" msgstr "" +#: src/pages/build/BuildDetail.tsx:190 +#: src/pages/part/PartDetail.tsx:274 +#~ msgid "Link custom barcode to part" +#~ msgstr "Link custom barcode to part" + #: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" -#: src/pages/build/BuildDetail.tsx:201 -#: src/pages/stock/StockDetail.tsx:539 -#: src/tables/build/BuildAllocatedStockTable.tsx:63 -msgid "Batch Code" -msgstr "" +#: src/pages/build/BuildDetail.tsx:196 +#: src/pages/part/PartDetail.tsx:280 +#~ msgid "Unlink custom barcode from part" +#~ msgstr "Unlink custom barcode from part" + +#: src/pages/build/BuildDetail.tsx:202 +#~ msgid "Build Order updated" +#~ msgstr "Build Order updated" + +#: src/pages/build/BuildDetail.tsx:221 +#~ msgid "Edit build order" +#~ msgstr "Edit build order" + +#: src/pages/build/BuildDetail.tsx:226 +#~ msgid "Duplicate build order" +#~ msgstr "Duplicate build order" + +#: src/pages/build/BuildDetail.tsx:231 +#~ msgid "Delete build order" +#~ msgstr "Delete build order" #: src/pages/build/BuildDetail.tsx:233 msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 #: src/pages/sales/ReturnOrderDetail.tsx:108 #: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 +#: src/pages/sales/SalesOrderDetail.tsx:246 msgid "Line Items" msgstr "" @@ -2953,22 +3947,24 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" #: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" @@ -2987,17 +3983,33 @@ msgstr "" msgid "Add Build Order" msgstr "" +#: src/pages/build/BuildDetail.tsx:368 +#~ msgid "Reporting Actions" +#~ msgstr "Reporting Actions" + +#: src/pages/build/BuildDetail.tsx:374 +#~ msgid "Print build report" +#~ msgstr "Print build report" + #: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" #: src/pages/build/BuildDetail.tsx:396 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" +#: src/pages/build/BuildIndex.tsx:23 +#~ msgid "Build order created" +#~ msgstr "Build order created" + +#: src/pages/build/BuildIndex.tsx:39 +#~ msgid "New Build Order" +#~ msgstr "New Build Order" + #: src/pages/company/CompanyDetail.tsx:102 msgid "Phone Number" msgstr "" @@ -3012,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3024,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3036,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3049,6 +4061,10 @@ msgstr "" msgid "Details" msgstr "" +#: src/pages/company/CompanyDetail.tsx:175 +#~ msgid "Edit company" +#~ msgstr "Edit company" + #: src/pages/company/CompanyDetail.tsx:176 msgid "Manufactured Parts" msgstr "" @@ -3057,6 +4073,10 @@ msgstr "" msgid "Supplied Parts" msgstr "" +#: src/pages/company/CompanyDetail.tsx:189 +#~ msgid "Delete company" +#~ msgstr "Delete company" + #: src/pages/company/CompanyDetail.tsx:230 msgid "Assigned Stock" msgstr "" @@ -3070,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -3262,271 +4266,306 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 -#: src/tables/bom/BomTable.tsx:106 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 #: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -#: src/tables/stock/StockItemTable.tsx:57 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:303 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:225 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/bom/BomTable.tsx:281 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:233 -#: src/tables/part/PartTable.tsx:88 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 #: src/tables/part/ParametricPartTable.tsx:222 -#: src/tables/part/PartTable.tsx:174 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:286 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:298 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:293 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 +#: src/pages/part/PartDetail.tsx:310 +#~ msgid "Edit part" +#~ msgstr "Edit part" + +#: src/pages/part/PartDetail.tsx:311 msgid "Purchaseable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:297 +#: src/pages/part/PartDetail.tsx:316 msgid "Saleable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:302 +#: src/pages/part/PartDetail.tsx:321 msgid "Virtual Part" msgstr "" -#: src/pages/part/PartDetail.tsx:310 +#: src/pages/part/PartDetail.tsx:322 +#~ msgid "Duplicate part" +#~ msgstr "Duplicate part" + +#: src/pages/part/PartDetail.tsx:327 +#~ msgid "Delete part" +#~ msgstr "Delete part" + +#: src/pages/part/PartDetail.tsx:329 #: src/tables/ColumnRenderers.tsx:214 msgid "Creation Date" msgstr "" -#: src/pages/part/PartDetail.tsx:315 +#: src/pages/part/PartDetail.tsx:334 msgid "Created By" msgstr "" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:157 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:113 +#: src/tables/part/PartTable.tsx:117 #: src/tables/stock/StockItemTable.tsx:176 -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:308 -#: src/tables/part/PartTable.tsx:82 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:301 -#: src/tables/part/PartTable.tsx:314 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:441 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + +#: src/pages/part/PartIndex.tsx:29 +#~ msgid "Categories" +#~ msgstr "Categories" + #: src/pages/part/PartPricingPanel.tsx:72 msgid "No pricing data found for this part." msgstr "" @@ -3568,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:173 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -3577,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -3593,13 +4632,21 @@ msgstr "" msgid "Maximum Price" msgstr "" +#: src/pages/part/pricing/BomPricingPanel.tsx:112 +#~ msgid "Minimum Total Price" +#~ msgstr "Minimum Total Price" + +#: src/pages/part/pricing/BomPricingPanel.tsx:117 +#~ msgid "Maximum Total Price" +#~ msgstr "Maximum Total Price" + #: src/pages/part/pricing/BomPricingPanel.tsx:128 #: src/pages/part/pricing/PriceBreakPanel.tsx:168 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:164 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -3668,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -3680,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -3740,46 +4788,45 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 #: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:129 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:155 #: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 +#: src/pages/sales/SalesOrderDetail.tsx:136 msgid "Total Cost" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:159 +#: src/pages/sales/ReturnOrderDetail.tsx:126 +#: src/pages/sales/SalesOrderDetail.tsx:130 +#~ msgid "Order Currency," +#~ msgstr "Order Currency," + +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -3789,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -3803,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -3878,86 +4931,114 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:155 +#~ msgid "Link custom barcode to stock item" +#~ msgstr "Link custom barcode to stock item" + +#: src/pages/stock/StockDetail.tsx:161 +#~ msgid "Unlink custom barcode from stock item" +#~ msgstr "Unlink custom barcode from stock item" + +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:205 +#~ msgid "Edit stock item" +#~ msgstr "Edit stock item" + +#: src/pages/stock/StockDetail.tsx:217 +#~ msgid "Delete stock item" +#~ msgstr "Delete stock item" + +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:433 +#~ msgid "Duplicate stock item" +#~ msgstr "Duplicate stock item" + +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:446 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:455 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:475 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -3976,6 +5057,14 @@ msgstr "" msgid "Select Columns" msgstr "" +#: src/tables/DownloadAction.tsx:13 +#~ msgid "Excel" +#~ msgstr "Excel" + +#: src/tables/DownloadAction.tsx:21 +#~ msgid "Download selected data" +#~ msgstr "Download selected data" + #: src/tables/DownloadAction.tsx:22 msgid "CSV" msgstr "" @@ -3988,6 +5077,10 @@ msgstr "" msgid "Excel (.xlsx)" msgstr "" +#: src/tables/DownloadAction.tsx:24 +#~ msgid "Excel (.xls)" +#~ msgstr "Excel (.xls)" + #: src/tables/DownloadAction.tsx:38 msgid "Download Data" msgstr "" @@ -4053,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -4079,41 +5172,46 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:594 +#: src/tables/InvenTreeTable.tsx:595 +#~ msgid "Print actions" +#~ msgstr "Print actions" + +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -4121,172 +5219,214 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:192 -#: src/tables/part/PartTable.tsx:130 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:200 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:121 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:208 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:217 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:242 -#: src/tables/part/PartTable.tsx:149 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 #: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:273 +#: src/tables/bom/BomTable.tsx:284 #: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:276 +#: src/tables/bom/BomTable.tsx:287 msgid "No available stock" msgstr "" -#: src/tables/bom/BomTable.tsx:294 +#: src/tables/bom/BomTable.tsx:301 +#~ msgid "Create BOM Item" +#~ msgstr "Create BOM Item" + +#: src/tables/bom/BomTable.tsx:305 msgid "Show trackable items" msgstr "" -#: src/tables/bom/BomTable.tsx:299 +#: src/tables/bom/BomTable.tsx:310 msgid "Show asssmbled items" msgstr "" -#: src/tables/bom/BomTable.tsx:304 +#: src/tables/bom/BomTable.tsx:315 msgid "Show items with available stock" msgstr "" -#: src/tables/bom/BomTable.tsx:309 +#: src/tables/bom/BomTable.tsx:320 msgid "Show items on order" msgstr "" -#: src/tables/bom/BomTable.tsx:313 +#: src/tables/bom/BomTable.tsx:324 msgid "Validated" msgstr "" -#: src/tables/bom/BomTable.tsx:314 +#: src/tables/bom/BomTable.tsx:325 msgid "Show validated items" msgstr "" -#: src/tables/bom/BomTable.tsx:318 +#: src/tables/bom/BomTable.tsx:329 #: src/tables/bom/UsedInTable.tsx:63 msgid "Inherited" msgstr "" -#: src/tables/bom/BomTable.tsx:319 +#: src/tables/bom/BomTable.tsx:330 #: src/tables/bom/UsedInTable.tsx:64 msgid "Show inherited items" msgstr "" -#: src/tables/bom/BomTable.tsx:323 +#: src/tables/bom/BomTable.tsx:331 +#~ msgid "Edit Bom Item" +#~ msgstr "Edit Bom Item" + +#: src/tables/bom/BomTable.tsx:333 +#~ msgid "Bom item updated" +#~ msgstr "Bom item updated" + +#: src/tables/bom/BomTable.tsx:334 msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:324 +#: src/tables/bom/BomTable.tsx:335 msgid "Show items which allow variant substitution" msgstr "" -#: src/tables/bom/BomTable.tsx:328 +#: src/tables/bom/BomTable.tsx:339 #: src/tables/bom/UsedInTable.tsx:68 #: src/tables/build/BuildLineTable.tsx:46 msgid "Optional" msgstr "" -#: src/tables/bom/BomTable.tsx:329 +#: src/tables/bom/BomTable.tsx:340 #: src/tables/bom/UsedInTable.tsx:69 msgid "Show optional items" msgstr "" -#: src/tables/bom/BomTable.tsx:333 +#: src/tables/bom/BomTable.tsx:344 #: src/tables/build/BuildLineTable.tsx:41 msgid "Consumable" msgstr "" -#: src/tables/bom/BomTable.tsx:334 +#: src/tables/bom/BomTable.tsx:345 msgid "Show consumable items" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/bom/BomTable.tsx:348 +#~ msgid "Delete Bom Item" +#~ msgstr "Delete Bom Item" + +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 msgid "Has Pricing" msgstr "" -#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/BomTable.tsx:349 +#~ msgid "Bom item deleted" +#~ msgstr "Bom item deleted" + +#: src/tables/bom/BomTable.tsx:350 msgid "Show items with pricing" msgstr "" -#: src/tables/bom/BomTable.tsx:348 -#: src/tables/bom/BomTable.tsx:450 -msgid "Add BOM Item" -msgstr "" +#: src/tables/bom/BomTable.tsx:351 +#~ msgid "Are you sure you want to remove this BOM item?" +#~ msgstr "Are you sure you want to remove this BOM item?" -#: src/tables/bom/BomTable.tsx:353 -msgid "BOM item created" -msgstr "" +#: src/tables/bom/BomTable.tsx:354 +#~ msgid "Validate BOM line" +#~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:360 -msgid "Edit BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:362 -msgid "BOM item updated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:369 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:370 -msgid "BOM item deleted" +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" msgstr "" #: src/tables/bom/BomTable.tsx:382 -msgid "BOM item validated" +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" msgstr "" -#: src/tables/bom/BomTable.tsx:391 -msgid "Failed to validate BOM item" +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" msgstr "" #: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 +msgid "BOM item validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:445 +msgid "Failed to validate BOM item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:412 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:429 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:464 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:469 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -4295,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -4304,37 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:34 +#: src/tables/build/BuildAllocatedStockTable.tsx:35 msgid "Allocated to Output" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:35 +#: src/tables/build/BuildAllocatedStockTable.tsx:36 msgid "Show items allocated to a build output" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:57 +#: src/tables/build/BuildAllocatedStockTable.tsx:58 msgid "Allocated Quantity" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:70 +#: src/tables/build/BuildAllocatedStockTable.tsx:78 msgid "Available Quantity" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:80 +#: src/tables/build/BuildAllocatedStockTable.tsx:88 #: src/tables/build/BuildOutputTable.tsx:253 msgid "Build Output" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:97 +#: src/tables/build/BuildAllocatedStockTable.tsx:105 msgid "Edit Build Item" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:107 +#: src/tables/build/BuildAllocatedStockTable.tsx:115 msgid "Delete Build Item" msgstr "" #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -4355,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:361 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -4448,6 +5588,10 @@ msgstr "" msgid "Complete selected outputs" msgstr "" +#: src/tables/build/BuildOutputTable.tsx:161 +#~ msgid "Delete build output" +#~ msgstr "Delete build output" + #: src/tables/build/BuildOutputTable.tsx:167 msgid "Scrap selected outputs" msgstr "" @@ -4526,6 +5670,10 @@ msgstr "" msgid "Are you sure you want to delete this address?" msgstr "" +#: src/tables/company/CompanyTable.tsx:71 +#~ msgid "New Company" +#~ msgstr "New Company" + #: src/tables/company/CompanyTable.tsx:74 #: src/tables/company/CompanyTable.tsx:123 msgid "Add Company" @@ -4615,6 +5763,10 @@ msgstr "" msgid "Add external link" msgstr "" +#: src/tables/general/AttachmentTable.tsx:254 +#~ msgid "Upload attachment" +#~ msgstr "Upload attachment" + #: src/tables/general/AttachmentTable.tsx:299 msgid "No attachments found" msgstr "" @@ -4623,93 +5775,97 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:494 +#~ msgid "Create machine" +#~ msgstr "Create machine" + +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -4812,8 +5968,8 @@ msgid "Show locked parts" msgstr "" #: src/tables/part/ParametricPartTable.tsx:232 -#: src/tables/part/PartTable.tsx:186 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 msgid "Assembly" msgstr "" @@ -4822,7 +5978,7 @@ msgid "Show assembly parts" msgstr "" #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -4835,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:274 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -4868,6 +6024,10 @@ msgstr "" msgid "Parameter Template" msgstr "" +#: src/tables/part/PartCategoryTemplateTable.tsx:93 +#~ msgid "[{0}]" +#~ msgstr "[{0}]" + #: src/tables/part/PartParameterTable.tsx:112 msgid "New Part Parameter" msgstr "" @@ -4886,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -4907,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -4931,115 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:73 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:95 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:104 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:175 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:234 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:240 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:241 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:247 -msgid "Filter by parts which are virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:257 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:280 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:281 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -5171,6 +6353,10 @@ msgstr "" msgid "An error occurred while fetching plugin details" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:113 +#~ msgid "Plugin with id {id} not found" +#~ msgstr "Plugin with id {id} not found" + #: src/tables/plugin/PluginListTable.tsx:122 msgid "Plugin information" msgstr "" @@ -5179,6 +6365,20 @@ msgstr "" msgid "Author" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:134 +#~ msgid "Plugin Actions" +#~ msgstr "Plugin Actions" + +#: src/tables/plugin/PluginListTable.tsx:138 +#: src/tables/plugin/PluginListTable.tsx:141 +#~ msgid "Edit plugin" +#~ msgstr "Edit plugin" + +#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:153 +#~ msgid "Reload" +#~ msgstr "Reload" + #: src/tables/plugin/PluginListTable.tsx:154 msgid "Plugin is not active" msgstr "" @@ -5243,14 +6443,54 @@ msgstr "" msgid "Activate Plugin" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:338 +#~ msgid "Deactivate Plugin" +#~ msgstr "Deactivate Plugin" + +#: src/tables/plugin/PluginListTable.tsx:354 +#~ msgid "The following plugin will be activated" +#~ msgstr "The following plugin will be activated" + +#: src/tables/plugin/PluginListTable.tsx:355 +#~ msgid "The following plugin will be deactivated" +#~ msgstr "The following plugin will be deactivated" + #: src/tables/plugin/PluginListTable.tsx:362 msgid "Deactivate" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:366 +#~ msgid "Confirm" +#~ msgstr "Confirm" + #: src/tables/plugin/PluginListTable.tsx:373 msgid "Activate" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:376 +#~ msgid "Activating plugin" +#~ msgstr "Activating plugin" + +#: src/tables/plugin/PluginListTable.tsx:376 +#~ msgid "Deactivating plugin" +#~ msgstr "Deactivating plugin" + +#: src/tables/plugin/PluginListTable.tsx:392 +#~ msgid "Plugin updated" +#~ msgstr "Plugin updated" + +#: src/tables/plugin/PluginListTable.tsx:394 +#~ msgid "The plugin was activated" +#~ msgstr "The plugin was activated" + +#: src/tables/plugin/PluginListTable.tsx:395 +#~ msgid "The plugin was deactivated" +#~ msgstr "The plugin was deactivated" + +#: src/tables/plugin/PluginListTable.tsx:403 +#~ msgid "Error updating plugin" +#~ msgstr "Error updating plugin" + #: src/tables/plugin/PluginListTable.tsx:406 msgid "Uninstall" msgstr "" @@ -5320,76 +6560,109 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:615 +#~ msgid "Plugin detail" +#~ msgstr "Plugin detail" + #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:59 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:108 msgid "Add Parameter" msgstr "" +#: src/tables/purchasing/ManufacturerPartParameterTable.tsx:60 +#~ msgid "Parameter updated" +#~ msgstr "Parameter updated" + #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:70 msgid "Edit Parameter" msgstr "" +#: src/tables/purchasing/ManufacturerPartParameterTable.tsx:73 +#~ msgid "Parameter deleted" +#~ msgstr "Parameter deleted" + +#: src/tables/purchasing/ManufacturerPartParameterTable.tsx:74 +#~ msgid "Are you sure you want to delete this parameter?" +#~ msgstr "Are you sure you want to delete this parameter?" + #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:78 msgid "Delete Parameter" msgstr "" +#: src/tables/purchasing/ManufacturerPartTable.tsx:63 +#~ msgid "Create Manufacturer Part" +#~ msgstr "Create Manufacturer Part" + #: src/tables/purchasing/ManufacturerPartTable.tsx:92 msgid "Delete Manufacturer Part" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/ManufacturerPartTable.tsx:100 +#~ msgid "Manufacturer part updated" +#~ msgstr "Manufacturer part updated" + +#: src/tables/purchasing/ManufacturerPartTable.tsx:112 +#~ msgid "Manufacturer part deleted" +#~ msgstr "Manufacturer part deleted" + +#: src/tables/purchasing/ManufacturerPartTable.tsx:114 +#~ msgid "Are you sure you want to remove this manufacturer part?" +#~ msgstr "Are you sure you want to remove this manufacturer part?" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -5421,6 +6694,10 @@ msgstr "" msgid "Show active internal parts" msgstr "" +#: src/tables/purchasing/SupplierPartTable.tsx:193 +#~ msgid "Supplier part updated" +#~ msgstr "Supplier part updated" + #: src/tables/purchasing/SupplierPartTable.tsx:197 msgid "Active Supplier" msgstr "" @@ -5429,6 +6706,14 @@ msgstr "" msgid "Show active suppliers" msgstr "" +#: src/tables/purchasing/SupplierPartTable.tsx:205 +#~ msgid "Supplier part deleted" +#~ msgstr "Supplier part deleted" + +#: src/tables/purchasing/SupplierPartTable.tsx:207 +#~ msgid "Are you sure you want to remove this supplier part?" +#~ msgstr "Are you sure you want to remove this supplier part?" + #: src/tables/purchasing/SupplierPartTable.tsx:218 msgid "Delete Supplier Part" msgstr "" @@ -5477,6 +6762,10 @@ msgstr "" msgid "Delete Error Report" msgstr "" +#: src/tables/settings/ErrorTable.tsx:51 +#~ msgid "Delete error report" +#~ msgstr "Delete error report" + #: src/tables/settings/ErrorTable.tsx:53 msgid "Are you sure you want to delete this error report?" msgstr "" @@ -5526,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -5618,6 +6907,18 @@ msgstr "" msgid "An error occurred while fetching template details" msgstr "" +#: src/tables/settings/TemplateTable.tsx:120 +#~ msgid "{templateTypeTranslation} with id {id} not found" +#~ msgstr "{templateTypeTranslation} with id {id} not found" + +#: src/tables/settings/TemplateTable.tsx:124 +#~ msgid "An error occurred while fetching {templateTypeTranslation} details" +#~ msgstr "An error occurred while fetching {templateTypeTranslation} details" + +#: src/tables/settings/TemplateTable.tsx:146 +#~ msgid "actions" +#~ msgstr "actions" + #: src/tables/settings/TemplateTable.tsx:170 msgid "Modify" msgstr "" @@ -5639,6 +6940,14 @@ msgstr "" msgid "Add Template" msgstr "" +#: src/tables/settings/TemplateTable.tsx:243 +#~ msgid "Add new" +#~ msgstr "Add new" + +#: src/tables/settings/TemplateTable.tsx:243 +#~ msgid "Create new" +#~ msgstr "Create new" + #: src/tables/settings/TemplateTable.tsx:249 msgid "Add template" msgstr "" @@ -5769,153 +7078,161 @@ msgstr "" msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:257 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:287 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:312 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:317 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:342 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:343 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:347 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:348 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:355 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:362 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:367 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:375 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:376 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:448 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:457 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:479 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:486 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:488 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:495 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:497 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:504 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:506 -#: src/tables/stock/StockItemTable.tsx:512 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:510 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:519 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:521 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -6011,10 +7328,18 @@ msgstr "" msgid "Show only passed tests" msgstr "" +#: src/tables/stock/StockLocationTable.tsx:38 +#~ msgid "structural" +#~ msgstr "structural" + #: src/tables/stock/StockLocationTable.tsx:43 msgid "Include sublocations in results" msgstr "" +#: src/tables/stock/StockLocationTable.tsx:43 +#~ msgid "external" +#~ msgstr "external" + #: src/tables/stock/StockLocationTable.tsx:48 msgid "Show structural locations" msgstr "" @@ -6063,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/bg/messages.po b/src/frontend/src/locales/bg/messages.po index 7de687aaa7..3436fc53d3 100644 --- a/src/frontend/src/locales/bg/messages.po +++ b/src/frontend/src/locales/bg/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: bg\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Bulgarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/cs/messages.po b/src/frontend/src/locales/cs/messages.po index 0b6fbbb333..80ff06608c 100644 --- a/src/frontend/src/locales/cs/messages.po +++ b/src/frontend/src/locales/cs/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: cs\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Czech\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -38,41 +38,49 @@ msgstr "Otevřít v administrátorském rozhraní" msgid "Copy to clipboard" msgstr "Zkopírovat do schránky" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Tisk štítku" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Tisk štítků byl úspěšně dokončen" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Chyba" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "Štítek nelze vygenerovat" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Tisk reportu" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Tisk reportu byl úspěšně dokončen" @@ -113,25 +121,25 @@ msgstr "V pořádku" msgid "Fail" msgstr "Selhání" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Ano" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Ne" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "Žádný název není definován" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Zkopírováno" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Kopírovat" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Odstranit přidružený obrázek z této položky?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Odstranit" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Zrušit" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Vymazat" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Nahrát obrázek" msgid "Delete image" msgstr "Smazat obrázek" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Součást není aktivní" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Neaktivní" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Součástka je šablonou (z této součástky jdou vytvořit varianty)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Součástka může být sestavena z jiných součástek" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Součástka může být použita v sestavách" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Stav zásob je sledován sériovým číslem" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Část může být zakoupena od externích dodavatelů" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Část může být prodána zákazníkům" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Část je virtuální (nikoli fyzická část)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtuální" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "Nahrání obrázku se nezdařilo" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Dokončeno" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Chyba formuláře" @@ -431,18 +405,17 @@ msgstr "Chyba formuláře" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Aktualizovat" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Přihlášení se nezdařilo" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Zkontrolujte vstup a zkuste to znovu." @@ -487,7 +460,7 @@ msgstr "Zkontrolujte vstup a zkuste to znovu." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "E-mail byl doručen úspěšně" @@ -615,7 +588,7 @@ msgstr "Server" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Stav: <0>worker ({0}), <1>pluginy{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Hledat" @@ -683,11 +656,11 @@ msgstr "Načítání" msgid "No results found" msgstr "Nebyly nalezeny žádné výsledky" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "Položka modelRenderer je požadovaná pro tabulky" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "Nejsou žádné záznamy" @@ -700,114 +673,159 @@ msgstr "Nejsou žádné záznamy" msgid "Thumbnail" msgstr "Náhled" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Akce čárového kódu" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Zobrazit" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Zobrazit čárový kód" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Přiřadit čárový kód" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Přiřadit vlatní čárový kód" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Odstranit čárový kód" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Odstranit vlastní čárový kód" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Upravit" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Smazat položku" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Duplikovat" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Duplikovat produkt" @@ -1172,13 +1190,13 @@ msgstr "Nastavení účtu" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Nastavení systému" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Centrum správce" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Stránky" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Pluginy" @@ -1235,25 +1253,25 @@ msgstr "Dokumentace" msgid "About" msgstr "O aplikaci" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Notifikace" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Nemáš žádné nové notifikace." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Notifikace" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Označit jako přečtené" @@ -1262,50 +1280,52 @@ msgstr "Označit jako přečtené" msgid "results" msgstr "výsledky" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Zadejte hledaný text" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Možnosti hledání" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Díl" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Díly" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Dodavatel dílu" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Skladová položka" @@ -1394,7 +1415,7 @@ msgstr "Umístění skladu" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Firma" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Firmy" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Firmy" msgid "Project Code" msgstr "Kód projektu" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Kódy projektu" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Adresa" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Adresy" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Kontakty" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Správce" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Správci" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Uživatel" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Uživatelé" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Neaktivní" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Zásoby" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Sériové číslo" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bulharština" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Čeština" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Dánština" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "Němčina" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Řečtina" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "Angličtina" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Španělština" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Španělština (Mexiko)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Farsi / Perština" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finština" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "Francouzština" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Hebrejština" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindština" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Maďarština" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Italština" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japonština" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Korejština" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "Lotyština" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Holandština" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norština" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polština" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Portugalština" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Portugalština (Brazilská)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Ruština" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "Slovenština" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Slovinština" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Švédština" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Thajština" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Turečtina" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "Ukrajinština" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Vietnamština" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Čínština (zjednodušená)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Čínština (tradiční)" @@ -2229,7 +2272,7 @@ msgstr "Domů" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Přehled" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Nedávno aktualizované" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Nízké zásoby" @@ -2368,10 +2411,10 @@ msgstr "Demo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Nákup" @@ -2381,7 +2424,7 @@ msgstr "Nákup" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Prodej" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Nadřazená kategorie" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "Nadřazená kategorie" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Nadřazená kategorie" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "Zvolte umístění" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "Cíl položky byl vybrán" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "Nastavit umístění" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "Lokace" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Stav" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Akce" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "Na skladě" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "Přesunout" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Akce" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Přidat" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "Počet" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "Přihlášen" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Vlastní jednotky" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Parametry dílu" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "Parametry kategorie" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "Stroje" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Rychlá volba" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Přidat nového uživatele" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "Pokročilá nastavení" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Štítky" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Účet" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "Označit jako nepřečtenou" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Stav" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "Reference" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "Reference" msgid "Description" msgstr "Popis" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "Upravit společnost" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Součást není aktivní" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtuální" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/da/messages.po b/src/frontend/src/locales/da/messages.po index c33b022b66..02724b37e8 100644 --- a/src/frontend/src/locales/da/messages.po +++ b/src/frontend/src/locales/da/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: da\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Danish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/de/messages.po b/src/frontend/src/locales/de/messages.po index 6547364de3..0cde4f6a3f 100644 --- a/src/frontend/src/locales/de/messages.po +++ b/src/frontend/src/locales/de/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: de\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: German\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "Im Admin-Interface öffnen" msgid "Copy to clipboard" msgstr "In die Zwischenablage kopieren" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Etiketten Drucken" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "Drucken" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Etikettendruck erfolgreich abgeschlossen" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Fehler" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "Das Etikett konnte nicht generiert werden" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Bericht drucken" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "Generieren" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Berichtsdruck erfolgreich abgeschlossen" @@ -83,15 +91,15 @@ msgstr "Der Bericht konnte nicht erstellt werden" #: src/components/buttons/PrintingActions.tsx:173 msgid "Printing Actions" -msgstr "" +msgstr "Druck Aktionen" #: src/components/buttons/PrintingActions.tsx:178 msgid "Print Labels" -msgstr "" +msgstr "Etiketten drucken" #: src/components/buttons/PrintingActions.tsx:184 msgid "Print Reports" -msgstr "" +msgstr "Berichte drucken" #: src/components/buttons/ScanButton.tsx:15 msgid "Scan QR code" @@ -113,25 +121,25 @@ msgstr "Bestanden" msgid "Fail" msgstr "Fehler" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Ja" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Nein" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "Kein Name festgelegt" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Kopiert" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Kopieren" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Verknüpftes Bild von diesem Teil entfernen?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Entfernen" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Abbrechen" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Leeren" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Bild hochladen" msgid "Delete image" msgstr "Bild löschen" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Teil ist nicht aktiv" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inaktiv" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Teil ist eine Vorlage (Varianten des Teils können erstellt werden)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Teil kann aus anderen Teilen gefertigt werden" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Teil kann in Baugruppen genutzt werden" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Teilebestand wird über Seriennummern verfolgt" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Teil kann bei externen Zulieferern gekauft werden" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Teil kann an Kunden verkauft werden" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Teil ist virtuell (kein physischer Gegenstand)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtuell" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" -msgstr "" +msgstr "Das Bild konnte nicht hochgeladen werden" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Abgeschlossen" @@ -283,7 +258,7 @@ msgstr "Notiz konnte nicht gespeichert werden" #: src/components/editors/NotesEditor.tsx:198 msgid "Preview Notes" -msgstr "" +msgstr "Notizen Vorschau" #: src/components/editors/NotesEditor.tsx:198 msgid "Edit Notes" @@ -320,7 +295,7 @@ msgstr "Fehler beim Speichern der Vorlage" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:146 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:270 msgid "Save & Reload Preview" -msgstr "" +msgstr "Vorschau speichern & neu laden" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 msgid "Are you sure you want to Save & Reload the preview?" @@ -368,7 +343,7 @@ msgstr "Die aktuelle Vorlage speichern und die Vorschau neu laden" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:329 msgid "Select instance to preview" -msgstr "" +msgstr "Instanz für Vorschau auswählen" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:373 msgid "Error rendering template" @@ -376,11 +351,11 @@ msgstr "Fehler bei Darstellung der Vorlage" #: src/components/errors/ClientError.tsx:23 msgid "Client Error" -msgstr "" +msgstr "Client Fehler" #: src/components/errors/ClientError.tsx:24 msgid "Client error occurred" -msgstr "" +msgstr "Client-Fehler aufgetreten" #: src/components/errors/GenericErrorPage.tsx:51 msgid "Status Code" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Formularfehler" @@ -431,18 +405,17 @@ msgstr "Formularfehler" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Aktualisieren" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Login fehlgeschlagen" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Überprüfen Sie Ihre Eingabe und versuchen Sie es erneut." @@ -487,7 +460,7 @@ msgstr "Überprüfen Sie Ihre Eingabe und versuchen Sie es erneut." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Mail erfolgreich gesendet" @@ -615,7 +588,7 @@ msgstr "Adresse" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Status: <0>worker ({0}), <1>Plugins{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Suche" @@ -683,11 +656,11 @@ msgstr "Wird geladen" msgid "No results found" msgstr "Keine Ergebnisse gefunden" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "modelRenderer Eintrag für Tabellen erforderlich" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "Keine Einträge vorhanden" @@ -700,114 +673,159 @@ msgstr "Keine Einträge vorhanden" msgid "Thumbnail" msgstr "Vorschaubild" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "Fertigstellen" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Barcode-Aktionen" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Anzeigen" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Barcode anzeigen" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Link-Barcode" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Benutzerdefinierter Barcode verknüpfen" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Verknüpfung des Barcodes aufheben" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Verknüpfung von benutzerdefiniertem Barcode aufheben" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Bearbeiten" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Element löschen" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Duplizieren" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Artikel duplizieren" @@ -1172,13 +1190,13 @@ msgstr "Benutzereinstellungen" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Einstellungen" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Adminbereich" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Seiten" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Plugins" @@ -1235,25 +1253,25 @@ msgstr "Dokumentation" msgid "About" msgstr "Über uns" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Benachrichtigungen" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Du hast keine ungelesenen Benachrichtigungen. " -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Benachrichtigung" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Als gelesen markieren" @@ -1262,50 +1280,52 @@ msgstr "Als gelesen markieren" msgid "results" msgstr "Ergebnisse" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Suchtext eingeben" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Suchoptionen" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Regex Suche" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Volltextsuche" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Bei der Suchanfrage ist ein Fehler aufgetreten" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Keine Ergebnisse" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Keine Ergebnisse für Suchanfrage verfügbar" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Unbekanntes Modell: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Teil" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Teile" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "Testvorlagen für Teil" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Zuliefererteil" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Zuliefererteile" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "Herstellerteil" @@ -1369,12 +1390,12 @@ msgstr "Teilkategorie" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Teil-Kategorien" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Lagerartikel" @@ -1394,7 +1415,7 @@ msgstr "Lagerort" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Lagerorte" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "Bauauftragspositionen" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Firma" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Unternehmen" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Unternehmen" msgid "Project Code" msgstr "Projekt-Code" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Projektnummern" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "Einkaufsbestellung" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Nachbestellungen" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "Bestellposition" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "Bestellpositionen" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Verkaufsauftrag" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Aufträge" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Versand der Bestellung" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Versand der Bestellungen" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Rückgabe Auftrag" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Reklamationen" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Adresse" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Adressen" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Kontakte" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Eigentümer" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Eigentümer" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Nutzer" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Benutzer" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "Plugin-Konfiguration" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "Plugin-Konfigurationen" @@ -1597,32 +1626,48 @@ msgstr "Plugin-Konfigurationen" msgid "Shipment" msgstr "Sendung" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inaktiv" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "Kein Bestand" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Lager" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Seriennummer" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "Keine Einstellungen angegeben" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "Keine Einstellungen angegeben" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "Boxen anzeigen" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bulgarisch" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Tschechisch" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Dänisch" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "Deutsch" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Griechisch" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "Englisch" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Spanisch" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Spanisch (Mexikanisch)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Farsi / Persisch" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finnisch" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "Französisch" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Hebräisch" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindi" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Ungarisch" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Italienisch" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japanisch" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Koreanisch" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "Lettisch" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Niederländisch" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norweger" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polnisch" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Portugiesisch" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Portugiesisch (Brasilien)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "Rumänisch" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Russisch" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "Slowakisch" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Slowenisch" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Schwedisch" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Thailändisch" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Türkisch" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "Ukrainisch" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Vietnamesisch" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Chinesisch (vereinfacht)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Chinesisch (Traditionell)" @@ -2229,7 +2272,7 @@ msgstr "Startseite" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Dashboard" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Kürzlich aktualisiert" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Geringer Bestand" @@ -2368,10 +2411,10 @@ msgstr "Demo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Einkauf" @@ -2381,7 +2424,7 @@ msgstr "Einkauf" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Verkäufe" @@ -2605,10 +2648,6 @@ msgstr "Bauprodukte wurden abgebrochen" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Übergeordnete Teilkategorie" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "Übergeordnete Teilkategorie" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Übergeordnete Teilkategorie" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "Lagerort wählen" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "Teile-Zielort ausgewählt" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "Standard-Lagerort der Teile-Kategorie ausgewählt" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "Lagerort zuvor empfangener Artikel ausgewählt" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "Standard-Lagerort ausgewählt" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "Barcode scannen" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "Lagerort festlegen" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "Batch-Code{0} zuweisen" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "Status ändern" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "Artikel aus Liste entfernen" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "Lagerort" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "Am Standard-Lagerort einbuchen" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "Am Zielort der Bauauftragsposition speichern" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "Bei bereits vorhandenen Lagerbestand einbuchen" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "Losnummer" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "Verpackung" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Status" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "Notiz" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "Art.-Nr." + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "Erhalten" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Aktionen" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "Positionen empfangen" @@ -2698,7 +2816,7 @@ msgstr "Positionen empfangen" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "Angegebene Menge als Packungen anstatt einzelner Artikel hinzufügen" @@ -2706,15 +2824,15 @@ msgstr "Angegebene Menge als Packungen anstatt einzelner Artikel hinzufügen" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "Ausgangsmenge für diesen Lagerartikel eingeben" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Seriennummern" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Seriennummern für neue Lagerartikel eingeben (oder leer lassen)" @@ -2722,94 +2840,82 @@ msgstr "Seriennummern für neue Lagerartikel eingeben (oder leer lassen)" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "Lagerartikel hinzufügen" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "Lade..." -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "Zum Standard-Lagerort verschieben" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "Auf Lager" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "Verschieben" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Aktionen" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Hinzufügen" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "Anzahl" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "Bestand hinzufügen" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "Bestand entfernen" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "Bestand verschieben" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "Bestand zählen" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "Bestandsstatus ändern" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "Bestand zusammenführen" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "Bestand löschen" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "Übergeordneter Lagerort" @@ -2833,11 +2939,11 @@ msgstr "Übergeordneter Lagerort" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "Ausgeloggt" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "Erfolgreich abgemeldet" @@ -2853,20 +2959,20 @@ msgstr "Erfolgreich abgemeldet" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Prüfen Sie Ihren Posteingang für einen Link zum Zurücksetzen. Dies funktioniert nur, wenn Sie ein Konto haben. Prüfen Sie auch den Spam-Ordner." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "Zurücksetzen fehlgeschlagen" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "Angemeldet" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "Erfolgreich angemeldet" @@ -2879,12 +2985,12 @@ msgstr "Erfolgreich angemeldet" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "Ungültiges Formular" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "methodenparameter nicht angegeben" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Lader" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "Hintergrundprozesse" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "Fehlerberichte" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "Währungen" @@ -3438,37 +3544,37 @@ msgstr "Währungen" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Kundenspezifische Einheiten" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Teile Parameter" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "Kategorie Parameter" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "Lagerort Typen" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "Maschinen" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Schnell-Auswahl" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Neuen Benutzer hinzufügen" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "Erweiterte Optionen" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Beschriftungen" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Berichte" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "Inventur" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Bauaufträge" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Zu Benutzereinstellungen wechseln" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Konto" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Sicherheit" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Anzeigeoptionen" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Kontoeinstellungen" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "Zu Systemeinstellungen wechseln" @@ -3689,36 +3794,22 @@ msgstr "Als ungelesen markieren" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Status" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "Referenz" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "Referenz" msgid "Description" msgstr "Beschreibung" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "Übergeordneter Bauauftrag" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "Bauauftrag Anzahl" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "Fertiggestellte Endprodukte" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "Aufgegeben von" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "Aufgegeben von" msgid "Responsible" msgstr "Verantwortlich" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "Erstellt" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "Zieldatum" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "Abgeschlossen" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "Quell Lagerort" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "Quell Lagerort" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "Beliebiger Lagerort" @@ -3801,7 +3892,7 @@ msgstr "Beliebiger Lagerort" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "Ziel Lagerort" @@ -3810,11 +3901,6 @@ msgstr "Ziel Lagerort" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "Losnummer" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "Losnummer" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "Bauauftrag Details" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" -msgstr "Bestand zuweisen" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" +msgstr "Bauauftrag Details" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "Positionen" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "Unvollständige Endprodukte" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "Verbrauchte Bestände" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "Unter-Bauaufträge" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "Anhänge" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "Notizen" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "Bauauftrag bearbeiten" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "Bauauftrag abbrechen" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "Neuer Bauauftrag" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "Bauauftrag-Aktionen" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "Bestellung stornieren" @@ -3929,9 +4024,9 @@ msgstr "Standardwährung" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "Lieferant" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "Hersteller" @@ -3953,7 +4048,7 @@ msgstr "Hersteller" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "Unternehmen bearbeiten" msgid "Company Actions" msgstr "Firmen-Aktionen" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "Internes Teil" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "Externer Link" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "Teilenummer des Herstellers" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "Herstellerdetails" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "Herstellerteil Details" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Parameter" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "Lieferanten" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "Herstellerteil bearbeiten" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "Herstellerteil hinzufügen" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "Herstellerteil Aktionen" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "Herstellerteil" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "Notiz" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "Art.-Nr." - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "Verpackung" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "Verpackungsmenge" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "Lieferantenverfügbarkeit" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "Verfügbarkeit aktualisiert" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "Verfügbarkeit" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "Zuliefererteil Details" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "Empfangene Lagerartikel" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "Zulieferer-Preise" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "Zuliefererteil Aktionen" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "Zuliefererteil bearbeiten" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "Zuliefererteil hinzufügen" @@ -4187,145 +4266,156 @@ msgstr "Kategorieaktionen" msgid "Category Details" msgstr "Kategorie-Details" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "Variante von" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "Version" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Kategorie" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "Standard Lagerort" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "Standard-Lagerort der Kategorie" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "IPN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "Version" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Einheiten" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "Schlüsselwörter" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Link" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "Verfügbarer Bestand" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "Minimaler Bestand" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "Bestellt" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "Bauaufträgen zugeordnet" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "Aufträgen zugeordnet" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "Herstellbar" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "Gebäude" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Aktiv" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "Gesperrt" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "Vorlagenteil" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "Baugruppe" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "Komponente" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "Nachverfolgbares Teil" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "Käufliches Teil" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "Verkäufliches Teil" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "Virtuelles Teil" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "Erstelldatum" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" -msgstr "Erstellt von" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "Käufliches Teil" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "Verkäufliches Teil" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" +msgstr "Virtuelles Teil" #: src/pages/part/PartDetail.tsx:322 #~ msgid "Duplicate part" @@ -4335,130 +4425,143 @@ msgstr "Erstellt von" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "Erstelldatum" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "Erstellt von" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "Standard Zulieferer" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Preisspanne" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "Letzte Inventur" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "Inventur durch" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "Teil-Details" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "Varianten" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "Ferienguthaben/Freitage" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "Stückliste" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "Verwendet in" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "Teilbepreisung" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "Hersteller" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "Terminierung" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "Testvorlagen" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "Zugehörige Teile" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "Verfügbar" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "Kein Bestand" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "In Bestellung" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "In Produktion" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "Teil bearbeiten" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "Teil hinzufügen" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "Teil löschen" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "Das Löschen dieses Teils kann nicht rückgängig gemacht werden" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "Lager-Aktionen" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "Bestand zählen" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "Bestand übertragen" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "Teile-Aktionen" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "Verkaufshistorie" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "Gesamtpreis" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponente" @@ -4542,8 +4645,8 @@ msgstr "Höchster Preis" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "Preis pro Einheit" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "Gesamt Preise" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "Zuletzt aktualisiert" @@ -4624,19 +4728,19 @@ msgstr "Minimaler Wert" msgid "Maximum Value" msgstr "Maximaler Wert" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "Keine Daten verfügbar" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "Keine Daten" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "Keine Preisdaten verfügbar" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "Lade Preisdaten" @@ -4684,27 +4788,23 @@ msgstr "Bestellung hinzufügen" msgid "Supplier Reference" msgstr "Lieferanten-Referenz" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "Positionen" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "Abgeschlossene Positionen" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "Bestellwährung" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "Abgeschlossene Sendungen" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" +msgstr "Gesamtkosten" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 #: src/pages/sales/ReturnOrderDetail.tsx:126 @@ -4712,33 +4812,21 @@ msgstr "Abgeschlossene Sendungen" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "Bestellwährung" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "Gesamtkosten" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "Erstellt am" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "Bestelldetails" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "Bestellaktionen" @@ -4748,6 +4836,12 @@ msgstr "Bestellaktionen" msgid "Customer Reference" msgstr "Kundenreferenz" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "Abgeschlossene Sendungen" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "Rücksendeauftrag bearbeiten" @@ -4762,17 +4856,17 @@ msgstr "Neuer Rücksendeauftrag" msgid "Customers" msgstr "Kunden" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "Auftrag bearbeiten" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "Auftrag hinzufügen" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "Ausstehende Sendungen" @@ -4837,11 +4931,11 @@ msgstr "Aktion für untergeordnete Lagerorte an diesem Lagerort" msgid "Location Actions" msgstr "Lagerort Aktionen" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "Basisteil" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "Lagerbestand Status" @@ -4853,15 +4947,15 @@ msgstr "Lagerbestand Status" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "Verbaut in" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "Verbraucht von" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "Bauauftrag" @@ -4874,31 +4968,31 @@ msgstr "Bauauftrag" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "Lagerdetails" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "Bestandsverfolgung" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "Test Daten" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "Installierte Elemente" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "Untergeordnete Objekte" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "Lagerartikel bearbeiten" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "Lagerartikel löschen" @@ -4906,37 +5000,45 @@ msgstr "Lagerartikel löschen" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "Lagervorgänge" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "Bestand zählen" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "Lagerbestand hinzufügen" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "Lagerbestand entfernen" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "Verschieben" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "Lagerbestand verschieben" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "Lagerartikel Aktionen" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Teil ist nicht aktiv" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "Artikel ist gesperrt" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "Kein Lagerort gesetzt" @@ -5044,7 +5146,7 @@ msgstr "Filter hinzufügen" msgid "Clear Filters" msgstr "Filter zurücksetzen" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Verweigert" msgid "Not found" msgstr "Nicht gefunden" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "Ausgewählte Datensätze löschen" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "Sind Sie sicher, dass Sie die ausgewählten Datensätze löschen möchten?" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "Diese Aktion kann nicht rückgängig gemacht werden!" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "Gelöschte Datensätze" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "Datensätze erfolgreich gelöscht" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "Löschen der Datensätze fehlgeschlagen" @@ -5100,16 +5202,16 @@ msgstr "Löschen der Datensätze fehlgeschlagen" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Barcode-Aktionen" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Daten aktualisieren" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Tabellenfilter" @@ -5117,129 +5219,82 @@ msgstr "Tabellenfilter" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "Diese Stücklistenposition ist für ein anderes übergeordnetes Element definiert" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "Teile-Informationen" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "Kein Bestand" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "Externer Bestand" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "Ersatz Bestand einbeziehen" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "Alternatives Lager einschließen" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "Lagerinformationen" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "Verbrauchsartikel" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "Nachverfolgbare Teile anzeigen" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "Zeige Baugruppen" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "Artikel mit verfügbarem Lagerbestand anzeigen" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "Artikel in Bestellung anzeigen" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "Bestätigt" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "Bestätigte Einträge anzeigen" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "Vererbt" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "Vererbte Elemente anzeigen" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "Optional" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "Optionale Elemente anzeigen" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" -msgstr "Verbrauchsmaterial" +msgid "Show trackable items" +msgstr "Nachverfolgbare Teile anzeigen" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "Verbrauchbare Artikel anzeigen" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" -msgstr "Hat Preise" +msgid "Show asssmbled items" +msgstr "Zeige Baugruppen" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" -msgstr "Artikel mit Preisen anzeigen" +msgid "Show items with available stock" +msgstr "Artikel mit verfügbarem Lagerbestand anzeigen" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" +msgstr "Artikel in Bestellung anzeigen" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" -msgstr "Stücklisten-Position hinzufügen" +msgid "Validated" +msgstr "Bestätigt" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" +msgstr "Bestätigte Einträge anzeigen" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" -msgstr "Stücklisten-Position erstellt" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "Vererbt" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" +msgstr "Vererbte Elemente anzeigen" #: src/tables/bom/BomTable.tsx:331 #~ msgid "Edit Bom Item" @@ -5249,30 +5304,51 @@ msgstr "Stücklisten-Position erstellt" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" -msgstr "Stücklisten-Position bearbeiten" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" +msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" -msgstr "Stücklisten-Position aktualisiert" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "Optional" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "Optionale Elemente anzeigen" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "Verbrauchsmaterial" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "Stücklisten-Position löschen" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" -msgstr "Stücklisten-Position gelöscht" +msgid "Show consumable items" +msgstr "Verbrauchbare Artikel anzeigen" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "Hat Preise" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "Artikel mit Preisen anzeigen" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "Stücklisten-Position gelöscht" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "Stücklisten-Position hinzufügen" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "Stücklisten-Position erstellt" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "Stücklisten-Position bearbeiten" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "Stücklisten-Position aktualisiert" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "Stücklisten-Position löschen" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "Stücklisten-Position gelöscht" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "Stückliste anzeigen" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "Ersatzteil bearbeiten" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "Aktive Baugruppen anzeigen" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Nachverfolgbar" @@ -5324,8 +5444,37 @@ msgstr "Nachverfolgbar" msgid "Show trackable assemblies" msgstr "Nachverfolgbare Baugruppen anzeigen" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "Bauprodukt" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "Zugewiesen" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "Optionale Positionen anzeigen" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "Nachverfolgbare Freigabe" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "In Produktion" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "Kein Lagerbestand verfügbar" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "Einheiten Menge" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "Bestand zuweisen" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "Bestand bestellen" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "Bestand bauen" @@ -5475,10 +5632,6 @@ msgstr "Bauprodukt verschrotten" msgid "Cancel build output" msgstr "Bauprodukt abbrechen" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "Bauprodukt" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "Losnummer" @@ -5622,81 +5775,81 @@ msgstr "Keine Anlagen gefunden" msgid "Drag attachment file here to upload" msgstr "Datei zum Hochladen hierher ziehen" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "Maschine neu gestartet" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "Neustart erforderlich" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "Maschinen-Aktionen" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "Maschine bearbeiten" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "Maschine löschen" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "Maschine wurde erfolgreich gelöscht." -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "Soll Maschine \"{0}\" gelöscht werden?" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "Neustart erforderlich" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "Maschinen-Aktionen" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "Neustart" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "Maschine neu starten" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "manueller Neustart erforderlich" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "Maschinen Informationen" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "Maschinen Typ" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "Maschinen Treiber" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "Initialisiert" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "Fehler" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "Keine Fehler gemeldet" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "Maschineneinstellungen" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "Treiber Einstellungen" @@ -5704,15 +5857,15 @@ msgstr "Treiber Einstellungen" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "Maschine hinzufügen" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "Maschine Details" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "Treiber" @@ -5787,27 +5940,45 @@ msgstr "Alter" msgid "Message" msgstr "Nachricht" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "Interne Einheiten" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "Parameter bearbeiten" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "Teileparameter hinzufügen" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "Teileparameter bearbeiten" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Montage" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Unter-Kategorien einschließen" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "Strukturkategorien anzeigen" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "Alternativen einschließen" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "Vorlagen mit Auswahlen anzeigen" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Hat Einheiten" @@ -5920,120 +6091,137 @@ msgstr "Parametervorlage löschen" msgid "Add parameter template" msgstr "Parametervorlage hinzufügen" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "Mindest-Lagerbestand" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "Bauauftragszuweisungen" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "Verkaufsauftragszuweisungen" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtern nach Teil aktiv Status" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Montage" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtern nach Baugruppen Attribut" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Teile in Unterkategorien einschließen" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Nach Teilattributen filtern" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Filtern nach Nachverfolgbarer Eigenschaft" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Nach Teilen mit Einheiten filtern" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "Hat IPN" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Nach Teilen filtern, die eine interne Teilenummer haben" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "Auf Lager" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Nach Teilen mit Lagerbestand filtern" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Nach Teilen mit geringem Lagerbestand filtern" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Kaufbar" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Nach Teilen filtern, die kaufbar sind" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Verkaufbar" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Nach Teilen filtern, die verkaufbar sind" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtuell" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Nach Teilen filtern, die virtuell sind" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Nicht virtuell" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "Beispiel" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "Installiert" @@ -6425,55 +6613,56 @@ msgstr "Herstellerteil löschen" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "Teilebeschreibung" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "Gesamtmenge" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "Erhalten" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "Lieferantennummer" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "Lieferanten-Link" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "Herstellernummer" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "Bestimmungsort" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "Position hinzufügen" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "Position bearbeiten" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "Position löschen" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "Position empfangen" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "Position hinzufügen" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "Erhaltene Artikel" @@ -6626,24 +6815,24 @@ msgstr "Beim Laden der Gruppendetails ist ein Fehler aufgetreten" msgid "Permission set" msgstr "Berechtigungen" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "Gruppe löschen" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "Gruppe gelöscht." -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "Sind Sie sicher, dass Sie diese Gruppe löschen möchten?" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "Gruppe hinzufügen" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "Gruppe bearbeiten" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "Lagerorttyp löschen" msgid "Icon" msgstr "Symbol" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "Dieser Lagerbestand ist in Produktion" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "Dieser Lagerbestand wurde einem Verkaufsauftrag zugewiesen" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "Dieser Lagerbestand wurde einem Kunden zugewiesen" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "Dieser Lagerartikel ist in einem anderen Lagerartikel verbaut" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "Lagerbestand wurde durch einen Bauauftrag verbraucht" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "Dieser Lagerartikel ist abgelaufen" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "Dieser Lagerartikel ist veraltet" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "Dieser Lagerartikel ist vollständig zugewiesen" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "Dieser Lagerartikel ist teilweise zugewiesen" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "Dieser Lagerartikel wurde verbraucht" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "Bestand aktiver Teile anzeigen" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "Nach Lagerstatus filtern" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "Zeige Bestand für Baugruppen" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "Zugewiesene Artikel anzeigen" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "Verfügbare Artikel anzeigen" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "Unter-Lagerorte einschließen" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "Bestand in Unter-Lagerorten einschließen" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "Erschöpft" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "Zeige aufgebrauchte Lagerbestände" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "Zeige Teile welche im Lager sind" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "Zeige Teile welche in Produktion sind" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "Lagerartikel für Teile-Varianten einschließen" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "Zeige Bestand, welcher in anderen Teilen verbaut ist" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "Zum Kunden geschickt" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "Zeige Bestand, welcher zum Kunden gesendet wurde" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "Hat Seriennummer" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "Zeige Bestand mit Seriennummer" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "Hat Losnummer" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "Zeige Bestand mit Losnummer" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "Verfolgbare Objekte anzeigen" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "Hat Einkaufspreis" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "Zeige Bestand, für welchen ein Einkaufspreis verfügbar ist" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "Externer Lagerort" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "Zeige Elemente an einem externen Lagerort" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "Lagerartikel hinzufügen" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "Bestimmte Menge aus dem Lagerartikel entfernen" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "Lagerartikel an neue Standorte verschieben" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "Bestandsstatus ändern" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "Status der Lagerbestände ändern" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "Bestand zusammenführen" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "Lagerartikel zusammenführen" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "Bestand bestellen" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "Neuen Bestand bestellen" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "Kunden zuweisen" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "Bestand löschen" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "Lagerartikel löschen" @@ -7191,3 +7388,4 @@ msgstr "Dokumentation lesen" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "Ignorieren und weiter zur Desktopansicht" + diff --git a/src/frontend/src/locales/el/messages.po b/src/frontend/src/locales/el/messages.po index 831cf6678d..531fae59a3 100644 --- a/src/frontend/src/locales/el/messages.po +++ b/src/frontend/src/locales/el/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: el\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Greek\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Αντιγράφηκε" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Αντιγραφή" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Αφαίρεση της σχετικής εικόνας από αυτό το στοιχείο;" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Αφαίρεση" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Ακύρωση" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Εκκαθάριση" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Μεταφόρτωση εικόνας" msgid "Delete image" msgstr "Διαγραφή εικόνας" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Το εξάρτημα είναι ανενεργό" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Ανενεργό" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Το εξάρτημα είναι πρότυπο (μπορούν να γίνουν παραλλαγές από αυτό το εξάρτημα)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Το εξάρτημα μπορεί να συναρμολογηθεί από άλλα εξαρτήματα" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Το εξάρτημα αυτό μπορεί να χρησιμοποιηθεί σε συναρμολόγηση" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Το απόθεμα του εξαρτήματος παρακολουθείται από σειριακό αριθμό" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Το εξάρτημα μπορεί να αγοραστεί από εξωτερικούς προμηθευτές" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Το εξάρτημα μπορεί να πωληθεί σε πελάτες" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Το εξάρτημα είναι εικονικό (μη φυσικό εξάρτημα)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Εικονικό" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Επιτυχία" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Σφάλμα Φόρμας" @@ -431,18 +405,17 @@ msgstr "Σφάλμα Φόρμας" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Ενημέρωση" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Ανενεργό" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Το εξάρτημα είναι ανενεργό" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Εικονικό" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/en/messages.po b/src/frontend/src/locales/en/messages.po index 90265b9660..317381b049 100644 --- a/src/frontend/src/locales/en/messages.po +++ b/src/frontend/src/locales/en/messages.po @@ -33,41 +33,49 @@ msgstr "Open in admin interface" msgid "Copy to clipboard" msgstr "Copy to clipboard" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Print Label" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "Print" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Label printing completed successfully" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Error" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "The label could not be generated" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Print Report" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "Generate" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Report printing completed successfully" @@ -108,25 +116,25 @@ msgstr "Pass" msgid "Fail" msgstr "Fail" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Yes" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "No" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "No name defined" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Copied" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Copy" @@ -139,22 +147,21 @@ msgid "Remove the associated image from this item?" msgstr "Remove the associated image from this item?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Remove" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Cancel" @@ -172,7 +179,7 @@ msgid "Clear" msgstr "Clear" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -198,73 +205,41 @@ msgstr "Upload Image" msgid "Delete image" msgstr "Delete image" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "Part is locked" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "Locked" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Part is not active" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inactive" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Part is a template part (variants can be made from this part)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Part can be assembled from other parts" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Part can be used in assemblies" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Part stock is tracked by serial number" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Part can be purchased from external suppliers" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Part can be sold to customers" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Part is virtual (not a physical part)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtual" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "Image upload failed" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Success" @@ -417,8 +392,7 @@ msgstr "Server Error" msgid "A server error occurred" msgstr "A server error occurred" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Form Error" @@ -426,18 +400,17 @@ msgstr "Form Error" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Update" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -610,7 +583,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -662,7 +635,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "State: <0>worker ({0}), <1>plugins{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Search" @@ -678,11 +651,11 @@ msgstr "Loading" msgid "No results found" msgstr "No results found" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "modelRenderer entry required for tables" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "No entries available" @@ -695,116 +668,161 @@ msgstr "No entries available" msgid "Thumbnail" msgstr "Thumbnail" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:155 msgid "Importing Rows" msgstr "Importing Rows" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:156 msgid "Please wait while the data is imported" msgstr "Please wait while the data is imported" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:173 msgid "An error occurred while importing data" msgstr "An error occurred while importing data" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:194 msgid "Edit Data" msgstr "Edit Data" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:222 msgid "Delete Row" msgstr "Delete Row" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:252 msgid "Row" msgstr "Row" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:270 msgid "Row contains errors" msgstr "Row contains errors" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:311 msgid "Accept" msgstr "Accept" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:344 msgid "Valid" msgstr "Valid" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:345 msgid "Filter by row validation status" msgstr "Filter by row validation status" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:350 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "Complete" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:351 msgid "Filter by row completion status" msgstr "Filter by row completion status" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:368 msgid "Import selected rows" msgstr "Import selected rows" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:383 +msgid "Processing Data" +msgstr "Processing Data" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "An error occurred" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "Select column, or leave blank to ignore this field." #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "Select a column from the data file" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" -msgstr "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" +msgstr "Ignore this field" + +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "Mapping data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "Accept Column Mapping" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "Database Field" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "Field Description" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" -msgstr "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" +msgstr "Imported Column" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" -msgstr "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" +msgstr "Default Value" #: src/components/importer/ImporterDrawer.tsx:45 +msgid "Upload File" +msgstr "Upload File" + +#: src/components/importer/ImporterDrawer.tsx:46 msgid "Map Columns" msgstr "Map Columns" -#: src/components/importer/ImporterDrawer.tsx:46 +#: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "Import Data" + +#: src/components/importer/ImporterDrawer.tsx:48 msgid "Process Data" msgstr "Process Data" -#: src/components/importer/ImporterDrawer.tsx:47 +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "Complete Import" -#: src/components/importer/ImporterDrawer.tsx:91 +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" +msgstr "Import Complete" + +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "Data has been imported successfully" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "Close" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "Unknown Status" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "Import session has unknown status" + +#: src/components/importer/ImporterDrawer.tsx:132 msgid "Importing Data" msgstr "Importing Data" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" -msgstr "Cancel import session" - #: src/components/importer/ImporterImportProgress.tsx:36 msgid "Importing Records" msgstr "Importing Records" @@ -813,51 +831,51 @@ msgstr "Importing Records" msgid "Imported rows" msgstr "Imported rows" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Barcode Actions" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "View" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "View barcode" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Link Barcode" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Link custom barcode" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Unlink Barcode" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Unlink custom barcode" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Edit" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Delete item" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Duplicate" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Duplicate item" @@ -1167,13 +1185,13 @@ msgstr "Account settings" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "System Settings" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Admin Center" @@ -1216,7 +1234,7 @@ msgid "Pages" msgstr "Pages" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Plugins" @@ -1230,25 +1248,25 @@ msgstr "Documentation" msgid "About" msgstr "About" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Notifications" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "You have no unread notifications." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Notification" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Mark as read" @@ -1257,50 +1275,52 @@ msgstr "Mark as read" msgid "results" msgstr "results" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Enter search text" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Search Options" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Regex search" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Whole word search" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "An error occurred during search query" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "No results" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "No results available for search query" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Unknown model: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1314,7 +1334,7 @@ msgstr "Part" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Parts" @@ -1337,7 +1357,8 @@ msgstr "Part Test Templates" #: src/components/render/ModelType.tsx:45 #: src/pages/company/SupplierPartDetail.tsx:192 #: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Supplier Part" @@ -1364,12 +1385,12 @@ msgstr "Part Category" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Part Categories" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Stock Item" @@ -1389,7 +1410,7 @@ msgstr "Stock Location" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Stock Locations" @@ -1428,15 +1449,23 @@ msgid "Build Lines" msgstr "Build Lines" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "Build Item" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "Build Items" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Company" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Companies" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1445,146 +1474,146 @@ msgstr "Companies" msgid "Project Code" msgstr "Project Code" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Project Codes" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:348 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "Purchase Order" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 #: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Purchase Orders" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "Purchase Order Line" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "Purchase Order Lines" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Sales Order" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Sales Orders" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Sales Order Shipment" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Sales Order Shipments" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Return Order" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Return Orders" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Address" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Addresses" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Contact" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Contacts" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Owner" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Owners" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "User" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Users" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "Import Session" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "Import Sessions" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "Label Template" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "Label Templates" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "Report Template" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "Report Templates" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "Plugin Configuration" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "Plugin Configurations" @@ -1592,32 +1621,48 @@ msgstr "Plugin Configurations" msgid "Shipment" msgstr "Shipment" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:307 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inactive" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "No stock" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Stock" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Serial Number" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:127 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1681,12 +1726,6 @@ msgstr "No settings specified" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -1999,10 +2038,6 @@ msgstr "No settings specified" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2079,138 +2114,146 @@ msgid "Show Boxes" msgstr "Show Boxes" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "Arabic" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bulgarian" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Czech" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Danish" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "German" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Greek" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "English" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Spanish" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Spanish (Mexican)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "Estonian" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Farsi / Persian" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finnish" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "French" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Hebrew" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindi" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Hungarian" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Italian" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japanese" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Korean" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "Latvian" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Dutch" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norwegian" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polish" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Portuguese" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Portuguese (Brazilian)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "Romanian" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Russian" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "Slovak" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Slovenian" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Swedish" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Thai" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Turkish" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "Ukrainian" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Vietnamese" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Chinese (Simplified)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Chinese (Traditional)" @@ -2224,7 +2267,7 @@ msgstr "Home" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Dashboard" @@ -2291,7 +2334,7 @@ msgid "Recently Updated" msgstr "Recently Updated" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Low Stock" @@ -2366,7 +2409,7 @@ msgstr "Demo" #: src/pages/company/ManufacturerPartDetail.tsx:236 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:351 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Purchasing" @@ -2376,7 +2419,7 @@ msgstr "Purchasing" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Sales" @@ -2600,10 +2643,6 @@ msgstr "Build outputs have been cancelled" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Parent part category" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2612,80 +2651,159 @@ msgstr "Parent part category" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Parent part category" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "Choose Location" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "Item Destination selected" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "Part category default location selected" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "Received stock location selected" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "Default location selected" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "Scan Barcode" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "Set Location" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "Assign Batch Code{0}" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "Adjust Packaging" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "Change Status" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "Add Note" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "Remove item from list" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "Location" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "Store at default location" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "Store at line item destination" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "Store with already received stock" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "Batch Code" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "Serial numbers" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:145 +#: src/pages/company/SupplierPartDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +msgid "Packaging" +msgstr "Packaging" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Status" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:99 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "Note" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:117 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "SKU" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:134 +msgid "Received" +msgstr "Received" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Actions" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "Receive Line Items" @@ -2693,7 +2811,7 @@ msgstr "Receive Line Items" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "Add given quantity as packs instead of individual items" @@ -2701,15 +2819,15 @@ msgstr "Add given quantity as packs instead of individual items" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "Enter initial quantity for this stock item" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Serial Numbers" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Enter serial numbers for new stock (or leave blank)" @@ -2717,94 +2835,82 @@ msgstr "Enter serial numbers for new stock (or leave blank)" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "Add Stock Item" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "Loading..." -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "Move to default location" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "In Stock" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "Move" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Actions" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Add" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "Count" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "Add Stock" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "Remove Stock" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "Transfer Stock" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "Count Stock" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "Change Stock Status" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "Merge Stock" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "Delete Stock Items" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "Parent stock location" @@ -2874,12 +2980,12 @@ msgstr "Successfully logged in" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "Invalid Form" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "method parameter not supplied" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3413,19 +3519,19 @@ msgstr "Loader" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "Data Import" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "Background Tasks" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "Error Reports" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "Currencies" @@ -3433,37 +3539,37 @@ msgstr "Currencies" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Custom Units" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Part Parameters" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "Category Parameters" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "Location types" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "Machines" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Quick Actions" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Add a new user" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "Advanced Options" @@ -3610,45 +3716,44 @@ msgid "Labels" msgstr "Labels" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Reporting" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "Stocktake" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Build Orders" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Switch to User Setting" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Account" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Security" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Display Options" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Account Settings" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "Switch to System Setting" @@ -3684,36 +3789,22 @@ msgstr "Mark as unread" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Status" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "Reference" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 #: src/pages/company/ManufacturerPartDetail.tsx:78 #: src/pages/company/SupplierPartDetail.tsx:85 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3730,29 +3821,29 @@ msgstr "Reference" msgid "Description" msgstr "Description" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "Parent Build" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "Build Quantity" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "Completed Outputs" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "Issued By" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3760,34 +3851,34 @@ msgstr "Issued By" msgid "Responsible" msgstr "Responsible" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "Created" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "Target Date" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "Completed" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "Source Location" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "Source Location" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "Any location" @@ -3796,7 +3887,7 @@ msgstr "Any location" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "Destination Location" @@ -3805,11 +3896,6 @@ msgstr "Destination Location" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "Batch Code" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3822,62 +3908,69 @@ msgstr "Batch Code" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "Build Details" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" -msgstr "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" +msgstr "Build Details" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "Line Items" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "Incomplete Outputs" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "Allocated Stock" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "Consumed Stock" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "Child Build Orders" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 #: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:265 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "Attachments" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:276 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "Notes" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "Edit Build Order" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "Cancel Build Order" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3891,14 +3984,14 @@ msgstr "Add Build Order" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "Build Order Actions" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:319 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "Cancel order" @@ -3948,7 +4041,7 @@ msgstr "Manufacturer" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3992,7 +4085,7 @@ msgstr "Company Actions" #: src/pages/company/ManufacturerPartDetail.tsx:71 #: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:77 msgid "Internal Part" msgstr "Internal Part" @@ -4016,12 +4109,12 @@ msgid "Manufacturer Part Details" msgstr "Manufacturer Part Details" #: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Parameters" #: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "Suppliers" @@ -4045,25 +4138,9 @@ msgstr "Manufacturer Part Actions" msgid "ManufacturerPart" msgstr "ManufacturerPart" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "Note" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "SKU" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "Packaging" - #: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:112 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:153 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "Pack Quantity" @@ -4085,7 +4162,7 @@ msgid "Supplier Part Details" msgstr "Supplier Part Details" #: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:252 msgid "Received Stock" msgstr "Received Stock" @@ -4182,145 +4259,156 @@ msgstr "Category Actions" msgid "Category Details" msgstr "Category Details" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "Variant of" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "Revision of" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "Revision" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Category" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "Default Location" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "Category Default Location" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "IPN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "Revision" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Units" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "Keywords" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Link" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "Available Stock" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "Variant Stock" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "Minimum Stock" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "On order" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "Allocated to Build Orders" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "Allocated to Sales Orders" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "Can Build" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "Building" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Active" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "Locked" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "Template Part" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "Assembled Part" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "Component Part" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "Trackable Part" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "Purchaseable Part" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "Saleable Part" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "Virtual Part" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "Creation Date" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" -msgstr "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "Purchaseable Part" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "Saleable Part" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" +msgstr "Virtual Part" #: src/pages/part/PartDetail.tsx:322 #~ msgid "Duplicate part" @@ -4330,130 +4418,143 @@ msgstr "Created By" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "Creation Date" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "Created By" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "Default Supplier" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Price Range" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "Last Stocktake" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "Stocktake By" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "Part Details" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "Variants" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "Allocations" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "Bill of Materials" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "Used In" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "Part Pricing" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "Manufacturers" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "Scheduling" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "Test Templates" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "Related Parts" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "Available" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "No Stock" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "On Order" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "In Production" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "Edit Part" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "Add Part" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "Delete Part" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "Deleting this part cannot be reversed" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "Stock Actions" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "Count part stock" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "Transfer part stock" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "Part Actions" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "Select Part Revision" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4499,7 +4600,7 @@ msgstr "Sale History" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4508,7 +4609,7 @@ msgstr "Total Price" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Component" @@ -4537,8 +4638,8 @@ msgstr "Maximum Price" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:179 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "Unit Price" @@ -4607,7 +4708,8 @@ msgid "Overall Pricing" msgstr "Overall Pricing" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "Last Updated" @@ -4679,27 +4781,23 @@ msgstr "Add Purchase Order" msgid "Supplier Reference" msgstr "Supplier Reference" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "Line Items" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "Completed Line Items" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "Order Currency" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" +msgstr "Total Cost" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 #: src/pages/sales/ReturnOrderDetail.tsx:126 @@ -4707,33 +4805,21 @@ msgstr "Completed Shipments" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "Order Currency" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "Total Cost" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "Created On" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "Order Details" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:309 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "Order Actions" @@ -4743,6 +4829,12 @@ msgstr "Order Actions" msgid "Customer Reference" msgstr "Customer Reference" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "Completed Shipments" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "Edit Return Order" @@ -4757,17 +4849,17 @@ msgstr "Add Return Order" msgid "Customers" msgstr "Customers" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "Edit Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "Add Sales Order" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "Pending Shipments" @@ -4832,11 +4924,11 @@ msgstr "Action for child locations in this location" msgid "Location Actions" msgstr "Location Actions" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "Base Part" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "Stock Status" @@ -4848,15 +4940,15 @@ msgstr "Stock Status" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "Installed In" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "Consumed By" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "Build Order" @@ -4869,31 +4961,31 @@ msgstr "Build Order" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "Stock Details" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "Stock Tracking" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "Test Data" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "Installed Items" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "Child Items" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "Edit Stock Item" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "Delete Stock Item" @@ -4901,37 +4993,45 @@ msgstr "Delete Stock Item" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "Stock Operations" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "Count stock" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "Add stock" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "Remove stock" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "Transfer" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "Transfer stock" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "Stock Item Actions" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Part is not active" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "Part is locked" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "No location set" @@ -5039,7 +5139,7 @@ msgstr "Add Filter" msgid "Clear Filters" msgstr "Clear Filters" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5065,28 +5165,28 @@ msgstr "Forbidden" msgid "Not found" msgstr "Not found" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "Delete selected records" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "Are you sure you want to delete the selected records?" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "This action cannot be undone!" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "Deleted records" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "Records were deleted successfully" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "Failed to delete records" @@ -5095,16 +5195,16 @@ msgstr "Failed to delete records" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Barcode actions" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Refresh data" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Table filters" @@ -5112,129 +5212,82 @@ msgstr "Table filters" msgid "Upload Data" msgstr "Upload Data" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "This BOM item is defined for a different parent" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "Part Information" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "No stock" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "External stock" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "Includes substitute stock" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "Includes variant stock" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "Stock Information" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "Consumable item" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "Show trackable items" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "Show asssmbled items" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "Show items with available stock" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "Show items on order" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "Validated" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "Show validated items" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "Inherited" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "Show inherited items" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "Allow Variants" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" -msgstr "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" +msgstr "No available stock" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "Optional" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "Show optional items" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" -msgstr "Consumable" +msgid "Show trackable items" +msgstr "Show trackable items" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "Show consumable items" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" -msgstr "Has Pricing" +msgid "Show asssmbled items" +msgstr "Show asssmbled items" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" -msgstr "Show items with pricing" +msgid "Show items with available stock" +msgstr "Show items with available stock" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" +msgstr "Show items on order" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" -msgstr "Add BOM Item" +msgid "Validated" +msgstr "Validated" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" +msgstr "Show validated items" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" -msgstr "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "Inherited" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" +msgstr "Show inherited items" #: src/tables/bom/BomTable.tsx:331 #~ msgid "Edit Bom Item" @@ -5244,30 +5297,51 @@ msgstr "BOM item created" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" -msgstr "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" +msgstr "Allow Variants" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" -msgstr "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "Show items which allow variant substitution" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "Optional" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "Show optional items" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "Consumable" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "Delete BOM Item" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" -msgstr "BOM item deleted" +msgid "Show consumable items" +msgstr "Show consumable items" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "Has Pricing" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "Show items with pricing" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5276,32 +5350,76 @@ msgstr "BOM item deleted" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "Import BOM Data" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "Add BOM Item" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "BOM item created" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "Edit BOM Item" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "BOM item updated" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "Delete BOM Item" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "BOM item deleted" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "Validate BOM" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "Do you want to validate the bill of materials for this assembly?" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "BOM validated" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "BOM item validated" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "Failed to validate BOM item" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "View BOM" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "Validate BOM Line" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "Edit Substitutes" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "Part is Locked" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "Bill of materials cannot be edited, as the part is locked" @@ -5310,7 +5428,7 @@ msgid "Show active assemblies" msgstr "Show active assemblies" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Trackable" @@ -5319,8 +5437,37 @@ msgstr "Trackable" msgid "Show trackable assemblies" msgstr "Show trackable assemblies" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "Allocated to Output" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "Show items allocated to a build output" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "Allocated Quantity" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "Available Quantity" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "Build Output" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "Edit Build Item" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "Delete Build Item" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "Allocated" @@ -5341,7 +5488,7 @@ msgid "Show optional lines" msgstr "Show optional lines" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "Tracked" @@ -5354,19 +5501,27 @@ msgid "In production" msgstr "In production" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "No stock available" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "Gets Inherited" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "Unit Quantity" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "Allocate Stock" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "Order Stock" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "Build Stock" @@ -5470,10 +5625,6 @@ msgstr "Scrap build output" msgid "Cancel build output" msgstr "Cancel build output" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "Build Output" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "Batch" @@ -5617,81 +5768,81 @@ msgstr "No attachments found" msgid "Drag attachment file here to upload" msgstr "Drag attachment file here to upload" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "Machine restarted" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "Restart required" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "Machine Actions" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "Edit machine" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "Delete machine" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "Machine successfully deleted." -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "Are you sure you want to remove the machine \"{0}\"?" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "Restart required" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "Machine Actions" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "Restart" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "Restart machine" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "manual restart required" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "Machine information" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "Machine Type" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "Machine Driver" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "Initialized" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "Errors" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "No errors reported" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "Machine Settings" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "Driver Settings" @@ -5699,15 +5850,15 @@ msgstr "Driver Settings" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "Add machine" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "Machine detail" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "Driver" @@ -5782,27 +5933,45 @@ msgstr "Age" msgid "Message" msgstr "Message" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "Internal Units" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "Edit parameter" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "Add Part Parameter" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "Edit Part Parameter" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "Show active parts" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "Show locked parts" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Assembly" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "Show assembly parts" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Include Subcategories" @@ -5815,7 +5984,7 @@ msgid "Show structural categories" msgstr "Show structural categories" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "Subscribed" @@ -5870,7 +6039,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "Part parameters cannot be edited, as the part is locked" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "Include Variants" @@ -5891,7 +6060,7 @@ msgid "Show templates with choices" msgstr "Show templates with choices" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Has Units" @@ -5915,120 +6084,137 @@ msgstr "Delete Parameter Template" msgid "Add parameter template" msgstr "Add parameter template" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "Minimum stock" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "Build Order Allocations" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "Sales Order Allocations" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filter by part active status" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "Filter by part locked status" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Assembly" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filter by assembly attribute" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Include parts in subcategories" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filter by component attribute" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Filter by trackable attribute" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Filter by parts which have units" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "Has IPN" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Filter by parts which have an internal part number" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "Has Stock" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Filter by parts which have stock" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Filter by parts which have low stock" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Purchaseable" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Filter by parts which are purchaseable" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Salable" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Filter by parts which are salable" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtual" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Filter by parts which are virtual" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Not Virtual" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "Is Template" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "Filter by parts which are templates" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "Is Revision" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "Filter by parts which are revisions" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "Has Revisions" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "Filter by parts which have revisions" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "Filter by parts which have pricing information" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "Filter by parts which have available stock" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "Filter by parts to which the user is subscribed" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "Has Stocktake" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "Filter by parts which have stocktake information" @@ -6367,7 +6553,7 @@ msgid "Sample" msgstr "Sample" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "Installed" @@ -6420,55 +6606,51 @@ msgstr "Delete Manufacturer Part" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:91 msgid "Part Description" msgstr "Part Description" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:118 msgid "Total Quantity" msgstr "Total Quantity" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "Received" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157 msgid "Supplier Code" msgstr "Supplier Code" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:164 msgid "Supplier Link" msgstr "Supplier Link" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:171 msgid "Manufacturer Code" msgstr "Manufacturer Code" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 msgid "Destination" msgstr "Destination" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:207 msgid "Add Line Item" msgstr "Add Line Item" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:224 msgid "Edit Line Item" msgstr "Edit Line Item" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 msgid "Delete Line Item" msgstr "Delete Line Item" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:243 msgid "Receive line item" msgstr "Receive line item" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:281 msgid "Add line item" msgstr "Add line item" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive items" msgstr "Receive items" @@ -6621,24 +6803,24 @@ msgstr "An error occurred while fetching group details" msgid "Permission set" msgstr "Permission set" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "Delete group" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "Group deleted" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "Are you sure you want to delete this group?" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "Add group" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "Edit group" @@ -6844,193 +7026,201 @@ msgstr "Delete Location Type" msgid "Icon" msgstr "Icon" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "This stock item is in production" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "This stock item has been assigned to a sales order" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "This stock item has been assigned to a customer" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "This stock item is installed in another stock item" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "This stock item has been consumed by a build order" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "This stock item has expired" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "This stock item is stale" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "This stock item is fully allocated" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "This stock item is partially allocated" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "This stock item has been depleted" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "Stocktake Date" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "Expiry Date" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "Stock Value" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "Show stock for active parts" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "Filter by stock status" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "Show stock for assmebled parts" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "Show items which have been allocated" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "Show items which are available" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "Include Sublocations" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "Include stock in sublocations" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "Depleted" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "Show depleted stock items" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "Show items which are in stock" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "Show items which are in production" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "Include stock items for variant parts" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "Show stock items which are installed in other items" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "Sent to Customer" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "Show items which have been sent to a customer" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "Is Serialized" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "Show items which have a serial number" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "Has Batch Code" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "Show items which have a batch code" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "Show tracked items" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "Has Purchase Price" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "Show items which have a purchase price" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "External Location" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "Show items in an external location" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "Add a new stock item" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "Remove some quantity from a stock item" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "Move Stock items to new locations" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "Change stock status" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "Change the status of stock items" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "Merge stock" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "Merge stock items" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "Order stock" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "Order new stock" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "Assign to customer" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "Delete stock" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "Delete stock items" diff --git a/src/frontend/src/locales/es-mx/messages.po b/src/frontend/src/locales/es-mx/messages.po index b9365249ba..bd41fa14b4 100644 --- a/src/frontend/src/locales/es-mx/messages.po +++ b/src/frontend/src/locales/es-mx/messages.po @@ -33,41 +33,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -108,25 +116,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -139,22 +147,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -172,7 +179,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -198,73 +205,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -417,8 +392,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -426,18 +400,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -591,7 +564,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -643,7 +616,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -659,11 +632,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -676,114 +649,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:155 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:156 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:173 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:194 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:222 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:252 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:270 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:311 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:344 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:345 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:350 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:351 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:368 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:383 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -794,51 +812,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1148,13 +1166,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1189,7 +1207,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1203,25 +1221,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1230,50 +1248,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1287,7 +1307,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1310,7 +1330,8 @@ msgstr "" #: src/components/render/ModelType.tsx:45 #: src/pages/company/SupplierPartDetail.tsx:192 #: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1337,12 +1358,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1362,7 +1383,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1401,15 +1422,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1418,146 +1447,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:348 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 #: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1565,32 +1594,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:307 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:127 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1654,12 +1699,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "" @@ -1968,10 +2007,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "" @@ -2048,138 +2083,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2193,7 +2236,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2260,7 +2303,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2327,7 +2370,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:236 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:351 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2337,7 +2380,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2497,10 +2540,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "" @@ -2509,80 +2548,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:145 +#: src/pages/company/SupplierPartDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:99 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:117 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:134 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2590,7 +2708,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2598,15 +2716,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2614,94 +2732,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2767,12 +2873,12 @@ msgstr "" #~ msgstr "" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3178,19 +3284,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3198,37 +3304,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3375,45 +3481,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3445,36 +3550,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 #: src/pages/company/ManufacturerPartDetail.tsx:78 #: src/pages/company/SupplierPartDetail.tsx:85 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3491,29 +3582,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3521,34 +3612,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3557,7 +3648,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3566,11 +3657,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "" @@ -3583,62 +3669,69 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 #: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:265 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:276 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3652,14 +3745,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:319 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3709,7 +3802,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3753,7 +3846,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:71 #: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:77 msgid "Internal Part" msgstr "" @@ -3777,12 +3870,12 @@ msgid "Manufacturer Part Details" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" @@ -3806,25 +3899,9 @@ msgstr "" msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - #: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:112 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:153 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" @@ -3846,7 +3923,7 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:252 msgid "Received Stock" msgstr "" @@ -3943,144 +4020,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4091,130 +4179,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartPricingPanel.tsx:72 msgid "No pricing data found for this part." msgstr "" @@ -4256,7 +4357,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4265,7 +4366,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4294,8 +4395,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:179 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4364,7 +4465,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4436,26 +4538,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4464,33 +4562,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:309 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4500,6 +4586,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4514,17 +4606,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4589,11 +4681,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4605,15 +4697,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4626,31 +4718,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4658,37 +4750,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4796,7 +4896,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -4822,28 +4922,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -4852,16 +4952,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -4869,128 +4969,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5001,30 +5054,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "" @@ -5033,32 +5107,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5067,7 +5185,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5076,8 +5194,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5098,7 +5245,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5111,19 +5258,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5227,10 +5382,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5374,81 +5525,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5456,15 +5607,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5539,27 +5690,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5572,7 +5741,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5627,7 +5796,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5648,7 +5817,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5672,120 +5841,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6124,7 +6310,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6177,55 +6363,51 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:91 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:118 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:164 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:171 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:207 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:224 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:243 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:281 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive items" msgstr "" @@ -6378,24 +6560,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6601,193 +6783,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" diff --git a/src/frontend/src/locales/es/messages.po b/src/frontend/src/locales/es/messages.po index 92888e61a3..3180775b24 100644 --- a/src/frontend/src/locales/es/messages.po +++ b/src/frontend/src/locales/es/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: es_MX\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "Abrir en interfaz de administrador" msgid "Copy to clipboard" msgstr "Copiar al portapapeles" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Imprimir etiqueta" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Impresión de etiqueta completada con éxito" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Error" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "La etiqueta no pudo ser generada" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Imprimir informe" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Impresión de informe completada con éxito" @@ -113,25 +121,25 @@ msgstr "Aprobado" msgid "Fail" msgstr "Falló" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Sí" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "No" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "No hay nombre definido" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Copiado" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Copiar" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "¿Eliminar imagen asociada al artículo?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Eliminar" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Cancelar" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Borrar" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Subir Imagen" msgid "Delete image" msgstr "Eliminar imagen" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "La pieza no está activa" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inactivo" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "La pieza es una pieza de plantilla (se pueden hacer variantes de esta misma)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Esta pieza se puede ensamblar utilizando otras partes" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Esta pieza se puede usar en ensamblajes" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Stock de pieza será rastreado con número de serie" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Error al iniciar sesión" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Envío de correo exitoso" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Órdenes de compra" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Ordenes de devolución" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inactivo" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "En Stock" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Agregar" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Etiquetas" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Informes" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Ordenes de Producción" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Cambiar a Configuración de Usuario" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Cuenta" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Seguridad" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Opciones de visualización" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "Proveedor" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Parámetros" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "Proveedores" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Activo" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "En producción" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "Contar stock" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "Agregar stock" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "Remover stock" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "Transferir" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "Transferir stock" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "La pieza no está activa" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Rastreable" @@ -5324,8 +5444,37 @@ msgstr "Rastreable" msgid "Show trackable assemblies" msgstr "Mostrar ensamblajes rastreables" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "Stock mínimo" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "Añadir Artículo de Línea" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "Recibir artículos" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "Eliminar grupo" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "Agregar grupo" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "Editar grupo" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Leer la documentación" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/et/messages.po b/src/frontend/src/locales/et/messages.po index 97df4ba570..b2f7646085 100644 --- a/src/frontend/src/locales/et/messages.po +++ b/src/frontend/src/locales/et/messages.po @@ -1,152 +1,163 @@ msgid "" msgstr "" -"POT-Creation-Date: 2024-07-14 02:55+0000\n" +"POT-Creation-Date: 2023-06-09 22:10+0200\n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: @lingui/cli\n" "Language: et\n" +"Project-Id-Version: inventree\n" +"Report-Msgid-Bugs-To: \n" +"PO-Revision-Date: 2024-07-17 16:39\n" +"Last-Translator: \n" +"Language-Team: Estonian\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Crowdin-Project: inventree\n" +"X-Crowdin-Project-ID: 452300\n" +"X-Crowdin-Language: et\n" +"X-Crowdin-File: /[inventree.InvenTree] l10/src/frontend/src/locales/en/messages.po\n" +"X-Crowdin-File-ID: 205\n" #: src/components/Boundary.tsx:12 msgid "Error rendering component" -msgstr "" +msgstr "Komponendi renderdamise viga" #: src/components/Boundary.tsx:14 msgid "An error occurred while rendering this component. Refer to the console for more information." -msgstr "" +msgstr "Selle komponendi renderdamisel tekkis viga. Lisateabe saamiseks vaadake konsooli." #: src/components/DashboardItemProxy.tsx:34 msgid "Title" -msgstr "" +msgstr "Pealkiri" #: src/components/buttons/AdminButton.tsx:83 msgid "Open in admin interface" -msgstr "" +msgstr "Ava admini liideses" #: src/components/buttons/CopyButton.tsx:18 msgid "Copy to clipboard" -msgstr "" +msgstr "Kopeeri lõikelauale" #: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" -msgstr "" +msgstr "Prindi silt" #: src/components/buttons/PrintingActions.tsx:99 msgid "Print" -msgstr "" +msgstr "Prindi" #: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" -msgstr "" +msgstr "Sildi printimine õnnestus" #: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:515 -#: src/components/forms/fields/ApiFormField.tsx:330 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 #: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 -#: src/tables/InvenTreeTable.tsx:469 -#: src/tables/InvenTreeTable.tsx:543 -#: src/tables/bom/BomTable.tsx:412 +#: src/tables/InvenTreeTable.tsx:470 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" -msgstr "" +msgstr "Tõrge" #: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" -msgstr "" +msgstr "Sildi genereerimine ebaõnnestus" #: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" -msgstr "" +msgstr "Prindi aruanne" #: src/components/buttons/PrintingActions.tsx:138 msgid "Generate" -msgstr "" +msgstr "Genereeri" #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" -msgstr "" +msgstr "Aruande printimine õnnestus" #: src/components/buttons/PrintingActions.tsx:145 msgid "The report could not be generated" -msgstr "" +msgstr "Aruande genereerimine ebaõnnestus" #: src/components/buttons/PrintingActions.tsx:173 msgid "Printing Actions" -msgstr "" +msgstr "Printimise toimingud" #: src/components/buttons/PrintingActions.tsx:178 msgid "Print Labels" -msgstr "" +msgstr "Prindi sildid" #: src/components/buttons/PrintingActions.tsx:184 msgid "Print Reports" -msgstr "" +msgstr "Prindi aruanded" #: src/components/buttons/ScanButton.tsx:15 msgid "Scan QR code" -msgstr "" +msgstr "Skaneeri QR-koodi" #: src/components/buttons/ScanButton.tsx:20 msgid "Open QR code scanner" -msgstr "" +msgstr "Ava QR-koodi skanner" #: src/components/buttons/SpotlightButton.tsx:14 msgid "Open spotlight" -msgstr "" +msgstr "Ava esiletõstmine" #: src/components/buttons/YesNoButton.tsx:16 msgid "Pass" -msgstr "" +msgstr "Läbi" #: src/components/buttons/YesNoButton.tsx:17 msgid "Fail" -msgstr "" +msgstr "Läbikukkumine" #: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" -msgstr "" +msgstr "Jah" #: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" -msgstr "" +msgstr "Ei" #: src/components/details/Details.tsx:294 msgid "No name defined" -msgstr "" +msgstr "Nime pole määratud" #: src/components/details/Details.tsx:331 msgid "Copied" -msgstr "" +msgstr "Kopeeritud" #: src/components/details/Details.tsx:331 msgid "Copy" -msgstr "" +msgstr "Kopeeri" #: src/components/details/DetailsImage.tsx:65 msgid "Remove Image" -msgstr "" +msgstr "Eemalda pilt" #: src/components/details/DetailsImage.tsx:68 msgid "Remove the associated image from this item?" -msgstr "" +msgstr "Kas soovite eemaldada seotud pildi sellest üksusest?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" -msgstr "" +msgstr "Eemalda" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 @@ -155,136 +166,180 @@ msgstr "" #: src/contexts/ThemeContext.tsx:43 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:516 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" -msgstr "" +msgstr "Tühista" #: src/components/details/DetailsImage.tsx:97 msgid "Drag and drop to upload" -msgstr "" +msgstr "Lohista ja aseta üleslaadimiseks" #: src/components/details/DetailsImage.tsx:100 msgid "Click to select file(s)" -msgstr "" +msgstr "Failide valimiseks klõpsake" #: src/components/details/DetailsImage.tsx:224 msgid "Clear" -msgstr "" +msgstr "Puhasta" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:584 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" -msgstr "" +msgstr "Esita" #: src/components/details/DetailsImage.tsx:267 msgid "Select from existing images" -msgstr "" +msgstr "Vali olemasolevatest piltidest" #: src/components/details/DetailsImage.tsx:275 msgid "Select Image" -msgstr "" +msgstr "Vali pilt" #: src/components/details/DetailsImage.tsx:287 msgid "Upload new image" -msgstr "" +msgstr "Laadi üles uus pilt" #: src/components/details/DetailsImage.tsx:294 msgid "Upload Image" -msgstr "" +msgstr "Laadi pilt üles" #: src/components/details/DetailsImage.tsx:307 msgid "Delete image" -msgstr "" +msgstr "Kustuta pilt" + +#: src/components/details/PartIcons.tsx:43 +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" + +#: src/components/details/PartIcons.tsx:49 +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" + +#: src/components/details/PartIcons.tsx:55 +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" + +#: src/components/details/PartIcons.tsx:61 +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" + +#: src/components/details/PartIcons.tsx:67 +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" + +#: src/components/details/PartIcons.tsx:73 +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" + +#: src/components/details/PartIcons.tsx:78 +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" -msgstr "" +msgstr "Pildi üleslaadimine ebaõnnestus" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:439 -#: src/tables/bom/BomTable.tsx:403 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" -msgstr "" +msgstr "Edu" #: src/components/editors/NotesEditor.tsx:157 msgid "Notes saved successfully" -msgstr "" +msgstr "Märkmed salvestati edukalt" #: src/components/editors/NotesEditor.tsx:166 msgid "Failed to save notes" -msgstr "" +msgstr "Märkmete salvestamine ebaõnnestus" #: src/components/editors/NotesEditor.tsx:198 msgid "Preview Notes" -msgstr "" +msgstr "Eelvaate märkmed" #: src/components/editors/NotesEditor.tsx:198 msgid "Edit Notes" -msgstr "" +msgstr "Muuda märkmeid" #: src/components/editors/NotesEditor.tsx:212 msgid "Save Notes" -msgstr "" +msgstr "Salvesta märkmed" #: src/components/editors/TemplateEditor/CodeEditor/index.tsx:9 msgid "Code" -msgstr "" +msgstr "Kood" + +#: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:44 +#~ msgid "Failed to parse error response from server." +#~ msgstr "Failed to parse error response from server." #: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:81 msgid "Preview not available, click \"Reload Preview\"." -msgstr "" +msgstr "Eelvaade pole saadaval, klõpsake \"Laadi eelvaade uuesti\"." #: src/components/editors/TemplateEditor/PdfPreview/index.tsx:9 msgid "PDF Preview" -msgstr "" +msgstr "PDF eelvaade" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:104 msgid "Error loading template" -msgstr "" +msgstr "Malli laadimise viga" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:116 msgid "Error saving template" -msgstr "" +msgstr "Malli salvestamise viga" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:146 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:270 msgid "Save & Reload Preview" -msgstr "" +msgstr "Salvesta ja laadi eelvaade uuesti" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 msgid "Are you sure you want to Save & Reload the preview?" -msgstr "" +msgstr "Kas olete kindel, et soovite salvestada ja eelvaate uuesti laadida?" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:151 +#~ msgid "Save & Reload preview?" +#~ msgstr "Save & Reload preview?" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:153 msgid "To render the preview the current template needs to be replaced on the server with your modifications which may break the label if it is under active use. Do you want to proceed?" -msgstr "" +msgstr "Eelvaate renderdamiseks tuleb serveris asendada praegune mall teie muudatustega, mis võivad sildi aktiivse kasutamise korral katki teha. Kas soovite jätkata?" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:157 msgid "Save & Reload" -msgstr "" +msgstr "Salvesta ja laadi uuesti" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:189 msgid "Preview updated" -msgstr "" +msgstr "Eelvaade uuendatud" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:190 msgid "The preview has been updated successfully." -msgstr "" +msgstr "Eelvaade on edukalt uuendatud." #: src/components/editors/TemplateEditor/TemplateEditor.tsx:262 msgid "Reload preview" -msgstr "" +msgstr "Laadi eelvaade uuesti" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:263 msgid "Use the currently stored template from the server" -msgstr "" +msgstr "Kasuta serveris praegu salvestatud malli" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:263 +#~ msgid "Save & Reload preview" +#~ msgstr "Save & Reload preview" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:271 msgid "Save the current template and reload the preview" -msgstr "" +msgstr "Salvesta praegune mall ja laadi eelvaade uuesti" + +#: src/components/editors/TemplateEditor/TemplateEditor.tsx:322 +#~ msgid "to preview" +#~ msgstr "to preview" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:329 msgid "Select instance to preview" @@ -292,97 +347,120 @@ msgstr "" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:373 msgid "Error rendering template" -msgstr "" +msgstr "Malli renderdamise viga" #: src/components/errors/ClientError.tsx:23 msgid "Client Error" -msgstr "" +msgstr "Kliendi viga" #: src/components/errors/ClientError.tsx:24 msgid "Client error occurred" -msgstr "" +msgstr "Tekkis kliendi viga" #: src/components/errors/GenericErrorPage.tsx:51 msgid "Status Code" -msgstr "" +msgstr "Olekukood" #: src/components/errors/GenericErrorPage.tsx:64 msgid "Return to the index page" -msgstr "" +msgstr "Naase indeksilehele" #: src/components/errors/NotAuthenticated.tsx:8 msgid "Not Authenticated" -msgstr "" +msgstr "Pole autenditud" #: src/components/errors/NotAuthenticated.tsx:9 msgid "You are not logged in." -msgstr "" +msgstr "Te ei ole sisse logitud." #: src/components/errors/NotFound.tsx:8 msgid "Page Not Found" -msgstr "" +msgstr "Lehte ei leitud" #: src/components/errors/NotFound.tsx:9 msgid "This page does not exist" -msgstr "" +msgstr "Seda lehte ei eksisteeri" #: src/components/errors/PermissionDenied.tsx:8 msgid "Permission Denied" -msgstr "" +msgstr "Juurdepääs keelatud" #: src/components/errors/PermissionDenied.tsx:9 msgid "You do not have permission to view this page." -msgstr "" +msgstr "Teil ei ole selle lehe vaatamiseks luba." #: src/components/errors/ServerError.tsx:8 msgid "Server Error" -msgstr "" +msgstr "Serveri viga" #: src/components/errors/ServerError.tsx:9 msgid "A server error occurred" -msgstr "" +msgstr "Tekkis serveri viga" #: src/components/forms/ApiForm.tsx:150 msgid "Form Error" -msgstr "" +msgstr "Vormiviga" -#: src/components/forms/ApiForm.tsx:622 +#: src/components/forms/ApiForm.tsx:487 +#~ msgid "Form Errors Exist" +#~ msgstr "Form Errors Exist" + +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" -msgstr "" +msgstr "Värskenda" -#: src/components/forms/ApiForm.tsx:642 +#: src/components/forms/ApiForm.tsx:665 #: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:515 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" -msgstr "" +msgstr "Kustuta" + +#: src/components/forms/AuthenticationForm.tsx:48 +#: src/components/forms/AuthenticationForm.tsx:74 +#: src/functions/auth.tsx:83 +#~ msgid "Check your your input and try again." +#~ msgstr "Check your your input and try again." #: src/components/forms/AuthenticationForm.tsx:51 msgid "Login successful" -msgstr "" +msgstr "Login õnnestus" #: src/components/forms/AuthenticationForm.tsx:52 msgid "Logged in successfully" msgstr "" +#: src/components/forms/AuthenticationForm.tsx:52 +#~ msgid "Welcome back!" +#~ msgstr "Welcome back!" + +#: src/components/forms/AuthenticationForm.tsx:53 +#~ msgid "Login successfull" +#~ msgstr "Login successfull" + #: src/components/forms/AuthenticationForm.tsx:58 msgid "Login failed" -msgstr "" +msgstr "Sisselogimine ebaõnnestus" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" +#: src/components/forms/AuthenticationForm.tsx:65 +#: src/functions/auth.tsx:74 +#~ msgid "Mail delivery successfull" +#~ msgstr "Mail delivery successfull" + #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -401,35 +479,39 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:106 #: src/components/forms/AuthenticationForm.tsx:227 msgid "Username" -msgstr "" +msgstr "Kasutajanimi" #: src/components/forms/AuthenticationForm.tsx:107 #: src/components/forms/AuthenticationForm.tsx:228 msgid "Your username" -msgstr "" +msgstr "Kasutajanimi" #: src/components/forms/AuthenticationForm.tsx:112 #: src/components/forms/AuthenticationForm.tsx:240 #: src/pages/Auth/Set-Password.tsx:106 msgid "Password" -msgstr "" +msgstr "Parool" #: src/components/forms/AuthenticationForm.tsx:113 #: src/components/forms/AuthenticationForm.tsx:241 msgid "Your password" -msgstr "" +msgstr "Salasõna" #: src/components/forms/AuthenticationForm.tsx:125 #: src/pages/Auth/Reset.tsx:26 msgid "Reset password" -msgstr "" +msgstr "Lähtesta salasõna" + +#: src/components/forms/AuthenticationForm.tsx:131 +#~ msgid "Log in" +#~ msgstr "Log in" #: src/components/forms/AuthenticationForm.tsx:134 #: src/components/forms/AuthenticationForm.tsx:233 #: src/pages/Auth/Reset.tsx:31 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:49 msgid "Email" -msgstr "" +msgstr "E-post" #: src/components/forms/AuthenticationForm.tsx:135 #: src/pages/Auth/Reset.tsx:32 @@ -437,9 +519,13 @@ msgstr "" msgid "We will send you a link to login - if you are registered" msgstr "" +#: src/components/forms/AuthenticationForm.tsx:136 +#~ msgid "I will use username and password" +#~ msgstr "I will use username and password" + #: src/components/forms/AuthenticationForm.tsx:151 msgid "Send me an email" -msgstr "" +msgstr "Saada mulle e-kiri" #: src/components/forms/AuthenticationForm.tsx:153 msgid "Use username and password" @@ -447,15 +533,15 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:162 msgid "Log In" -msgstr "" +msgstr "Logi Sisse" #: src/components/forms/AuthenticationForm.tsx:164 msgid "Send Email" -msgstr "" +msgstr "Saada kiri" #: src/components/forms/AuthenticationForm.tsx:193 msgid "Registration successful" -msgstr "" +msgstr "Registreerumine õnnestus" #: src/components/forms/AuthenticationForm.tsx:194 msgid "Please confirm your email address to complete the registration" @@ -463,7 +549,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:210 msgid "Input error" -msgstr "" +msgstr "Sisestustõrge" #: src/components/forms/AuthenticationForm.tsx:234 msgid "This will be used for a confirmation" @@ -471,24 +557,24 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:246 msgid "Password repeat" -msgstr "" +msgstr "Salasõna (korrata)" #: src/components/forms/AuthenticationForm.tsx:247 msgid "Repeat password" -msgstr "" +msgstr "Korrake salasõna" #: src/components/forms/AuthenticationForm.tsx:259 #: src/components/forms/AuthenticationForm.tsx:304 msgid "Register" -msgstr "" +msgstr "Registreeru" #: src/components/forms/AuthenticationForm.tsx:265 msgid "Or use SSO" -msgstr "" +msgstr "Või kasuta SSO" #: src/components/forms/AuthenticationForm.tsx:296 msgid "Don't have an account?" -msgstr "" +msgstr "Kas teil pole kontot?" #: src/components/forms/AuthenticationForm.tsx:315 msgid "Go back to login" @@ -515,7 +601,7 @@ msgstr "" #: src/tables/settings/PendingTasksTable.tsx:26 #: src/tables/stock/LocationTypesTable.tsx:60 msgid "Name" -msgstr "" +msgstr "Pealkiri" #: src/components/forms/HostOptionsForm.tsx:75 msgid "No one here..." @@ -557,140 +643,189 @@ msgstr "" #: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" -msgstr "" +msgstr "Otsing" #: src/components/forms/fields/RelatedModelField.tsx:321 #: src/components/modals/AboutInvenTreeModal.tsx:81 #: src/components/widgets/WidgetLayout.tsx:120 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:309 msgid "Loading" -msgstr "" +msgstr "Laadimine" #: src/components/forms/fields/RelatedModelField.tsx:323 msgid "No results found" -msgstr "" +msgstr "Tulemusi pole" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" +#: src/components/images/DetailsImage.tsx:252 +#~ msgid "Select image" +#~ msgstr "Select image" + #: src/components/images/Thumbnail.tsx:12 #: src/components/images/Thumbnail.tsx:58 msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" -msgstr "" +msgstr "Nõustu" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" -msgstr "" +msgstr "Valmis" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "Andmete importimine" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "Sulge" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -708,7 +843,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:138 msgid "View" -msgstr "" +msgstr "Kuva" #: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" @@ -723,7 +858,7 @@ msgid "Link custom barcode" msgstr "" #: src/components/items/ActionDropdown.tsx:172 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" @@ -734,7 +869,7 @@ msgstr "" #: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" -msgstr "" +msgstr "Muuda" #: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" @@ -754,7 +889,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:5 -#: src/tables/InvenTreeTable.tsx:461 +#: src/tables/InvenTreeTable.tsx:462 msgid "Unknown error" msgstr "" @@ -842,7 +977,7 @@ msgstr "" #: src/components/modals/AboutInvenTreeModal.tsx:162 msgid "Links" -msgstr "" +msgstr "Lingid" #: src/components/modals/AboutInvenTreeModal.tsx:168 msgid "InvenTree Documentation" @@ -871,7 +1006,7 @@ msgstr "" #: src/components/modals/AboutInvenTreeModal.tsx:192 #: src/components/modals/ServerInfoModal.tsx:147 msgid "Dismiss" -msgstr "" +msgstr "Loobu" #: src/components/modals/LicenseModal.tsx:39 msgid "No license text available" @@ -949,7 +1084,7 @@ msgstr "" #: src/components/modals/ServerInfoModal.tsx:26 #: src/pages/Index/Settings/SystemSettings.tsx:38 msgid "Server" -msgstr "" +msgstr "Server" #: src/components/modals/ServerInfoModal.tsx:32 msgid "Instance Name" @@ -957,7 +1092,11 @@ msgstr "" #: src/components/modals/ServerInfoModal.tsx:38 msgid "Database" -msgstr "" +msgstr "Andmebaas" + +#: src/components/modals/ServerInfoModal.tsx:38 +#~ msgid "Bebug Mode" +#~ msgstr "Bebug Mode" #: src/components/modals/ServerInfoModal.tsx:47 msgid "Debug Mode" @@ -1019,7 +1158,7 @@ msgstr "" #: src/tables/plugin/PluginListTable.tsx:144 #: src/tables/plugin/PluginListTable.tsx:294 msgid "Version" -msgstr "" +msgstr "Versioon" #: src/components/modals/ServerInfoModal.tsx:127 msgid "Server Version" @@ -1034,10 +1173,15 @@ msgstr "" msgid "Nothing found..." msgstr "" +#: src/components/nav/MainMenu.tsx:40 +#: src/pages/Index/Profile/Profile.tsx:15 +#~ msgid "Profile" +#~ msgstr "Profile" + #: src/components/nav/MainMenu.tsx:42 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:26 msgid "Settings" -msgstr "" +msgstr "Seaded" #: src/components/nav/MainMenu.tsx:49 #: src/defaults/menuItems.tsx:15 @@ -1056,9 +1200,17 @@ msgstr "" msgid "Admin Center" msgstr "" +#: src/components/nav/MainMenu.tsx:68 +#~ msgid "Current language {locale}" +#~ msgstr "Current language {locale}" + +#: src/components/nav/MainMenu.tsx:71 +#~ msgid "Switch to pseudo language" +#~ msgstr "Switch to pseudo language" + #: src/components/nav/MainMenu.tsx:77 msgid "Logout" -msgstr "" +msgstr "Logi välja" #: src/components/nav/NavHoverMenu.tsx:65 #: src/defaults/actions.tsx:58 @@ -1080,7 +1232,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:57 msgid "Navigation" -msgstr "" +msgstr "Navigeerimine" #: src/components/nav/NavigationDrawer.tsx:60 msgid "Pages" @@ -1099,7 +1251,7 @@ msgstr "" #: src/components/nav/NavigationDrawer.tsx:78 msgid "About" -msgstr "" +msgstr "Teave" #: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 @@ -1107,7 +1259,7 @@ msgstr "" #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" -msgstr "" +msgstr "Teavitused" #: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." @@ -1130,11 +1282,11 @@ msgstr "" #: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" -msgstr "" +msgstr "Lisage otsitav tekst" #: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" -msgstr "" +msgstr "Otsingu valikud" #: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" @@ -1156,23 +1308,24 @@ msgstr "" msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:205 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 #: src/pages/build/BuildDetail.tsx:87 #: src/pages/part/PartDetail.tsx:982 -#: src/tables/build/BuildAllocatedStockTable.tsx:44 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1207,10 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 -#: src/tables/build/BuildAllocatedStockTable.tsx:85 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1220,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1242,7 +1395,7 @@ msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1262,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1333,7 +1486,7 @@ msgstr "" #: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" @@ -1341,7 +1494,7 @@ msgstr "" #: src/components/render/ModelType.tsx:139 #: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 +#: src/pages/company/SupplierPartDetail.tsx:228 #: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" @@ -1357,8 +1510,8 @@ msgstr "" #: src/components/render/ModelType.tsx:152 #: src/pages/build/BuildDetail.tsx:135 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" @@ -1403,9 +1556,9 @@ msgid "Addresses" msgstr "" #: src/components/render/ModelType.tsx:184 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" @@ -1427,13 +1580,13 @@ msgstr "" #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" -msgstr "" +msgstr "Kasutaja" #: src/components/render/ModelType.tsx:199 #: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" -msgstr "" +msgstr "Kasutajad" #: src/components/render/ModelType.tsx:205 msgid "Import Session" @@ -1476,13 +1629,13 @@ msgstr "" #: src/components/render/Part.tsx:24 #: src/components/render/Plugin.tsx:17 #: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 +#: src/pages/company/SupplierPartDetail.tsx:321 #: src/pages/part/PartDetail.tsx:799 msgid "Inactive" msgstr "" #: src/components/render/Part.tsx:27 -#: src/tables/bom/BomTable.tsx:194 +#: src/tables/bom/BomTable.tsx:203 #: src/tables/part/PartTable.tsx:134 msgid "No stock" msgstr "" @@ -1493,30 +1646,37 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:211 #: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 +#: src/pages/stock/StockDetail.tsx:355 #: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" -msgstr "" +msgstr "Kogus" + +#: src/components/settings/SettingItem.tsx:47 +#: src/components/settings/SettingItem.tsx:100 +#~ msgid "{0} updated successfully" +#~ msgstr "{0} updated successfully" #: src/components/settings/SettingList.tsx:67 msgid "Edit Setting" @@ -1539,6 +1699,362 @@ msgstr "" msgid "No settings specified" msgstr "" +#: src/components/tables/FilterGroup.tsx:29 +#~ msgid "Add table filter" +#~ msgstr "Add table filter" + +#: src/components/tables/FilterGroup.tsx:44 +#~ msgid "Clear all filters" +#~ msgstr "Clear all filters" + +#: src/components/tables/FilterGroup.tsx:51 +#~ msgid "Add filter" +#~ msgstr "Add filter" + +#: src/components/tables/FilterSelectModal.tsx:56 +#~ msgid "True" +#~ msgstr "True" + +#: src/components/tables/FilterSelectModal.tsx:57 +#~ msgid "False" +#~ msgstr "False" + +#: src/components/tables/FilterSelectModal.tsx:143 +#~ msgid "Add Table Filter" +#~ msgstr "Add Table Filter" + +#: src/components/tables/FilterSelectModal.tsx:145 +#~ msgid "Select from the available filters" +#~ msgstr "Select from the available filters" + +#: src/components/tables/bom/BomTable.tsx:113 +#~ msgid "Substitutes" +#~ msgstr "Substitutes" + +#: src/components/tables/bom/BomTable.tsx:200 +#~ msgid "Validate" +#~ msgstr "Validate" + +#: src/components/tables/bom/BomTable.tsx:250 +#~ msgid "Has Available Stock" +#~ msgstr "Has Available Stock" + +#: src/components/tables/bom/UsedInTable.tsx:40 +#~ msgid "Required Part" +#~ msgstr "Required Part" + +#: src/components/tables/build/BuildLineTable.tsx:152 +#~ msgid "Required Quantity" +#~ msgstr "Required Quantity" + +#: src/components/tables/build/BuildOrderTable.tsx:52 +#~ msgid "Progress" +#~ msgstr "Progress" + +#: src/components/tables/build/BuildOrderTable.tsx:65 +#~ msgid "Priority" +#~ msgstr "Priority" + +#: src/components/tables/company/AddressTable.tsx:68 +#~ msgid "Postal Code" +#~ msgstr "Postal Code" + +#: src/components/tables/company/AddressTable.tsx:74 +#~ msgid "City" +#~ msgstr "City" + +#: src/components/tables/company/AddressTable.tsx:80 +#~ msgid "State / Province" +#~ msgstr "State / Province" + +#: src/components/tables/company/AddressTable.tsx:86 +#~ msgid "Country" +#~ msgstr "Country" + +#: src/components/tables/company/AddressTable.tsx:92 +#~ msgid "Courier Notes" +#~ msgstr "Courier Notes" + +#: src/components/tables/company/AddressTable.tsx:98 +#~ msgid "Internal Notes" +#~ msgstr "Internal Notes" + +#: src/components/tables/company/AddressTable.tsx:130 +#~ msgid "Address updated" +#~ msgstr "Address updated" + +#: src/components/tables/company/AddressTable.tsx:142 +#~ msgid "Address deleted" +#~ msgstr "Address deleted" + +#: src/components/tables/company/CompanyTable.tsx:32 +#~ msgid "Company Name" +#~ msgstr "Company Name" + +#: src/components/tables/company/ContactTable.tsx:41 +#~ msgid "Phone" +#~ msgstr "Phone" + +#: src/components/tables/company/ContactTable.tsx:53 +#~ msgid "Role" +#~ msgstr "Role" + +#: src/components/tables/company/ContactTable.tsx:78 +#~ msgid "Contact updated" +#~ msgstr "Contact updated" + +#: src/components/tables/company/ContactTable.tsx:90 +#~ msgid "Contact deleted" +#~ msgstr "Contact deleted" + +#: src/components/tables/company/ContactTable.tsx:92 +#~ msgid "Are you sure you want to delete this contact?" +#~ msgstr "Are you sure you want to delete this contact?" + +#: src/components/tables/company/ContactTable.tsx:108 +#~ msgid "Create Contact" +#~ msgstr "Create Contact" + +#: src/components/tables/company/ContactTable.tsx:110 +#~ msgid "Contact created" +#~ msgstr "Contact created" + +#: src/components/tables/general/AttachmentTable.tsx:47 +#~ msgid "Comment" +#~ msgstr "Comment" + +#: src/components/tables/part/PartCategoryTable.tsx:122 +#~ msgid "Part category updated" +#~ msgstr "Part category updated" + +#: src/components/tables/part/PartParameterTable.tsx:41 +#~ msgid "Parameter" +#~ msgstr "Parameter" + +#: src/components/tables/part/PartParameterTable.tsx:114 +#~ msgid "Part parameter updated" +#~ msgstr "Part parameter updated" + +#: src/components/tables/part/PartParameterTable.tsx:130 +#~ msgid "Part parameter deleted" +#~ msgstr "Part parameter deleted" + +#: src/components/tables/part/PartParameterTable.tsx:132 +#~ msgid "Are you sure you want to remove this parameter?" +#~ msgstr "Are you sure you want to remove this parameter?" + +#: src/components/tables/part/PartParameterTable.tsx:159 +#~ msgid "Part parameter added" +#~ msgstr "Part parameter added" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:67 +#~ msgid "Choices" +#~ msgstr "Choices" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:83 +#~ msgid "Remove parameter template" +#~ msgstr "Remove parameter template" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:84 +#~ msgid "Parameter template updated" +#~ msgstr "Parameter template updated" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:96 +#~ msgid "Parameter template deleted" +#~ msgstr "Parameter template deleted" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:98 +#~ msgid "Are you sure you want to remove this parameter template?" +#~ msgstr "Are you sure you want to remove this parameter template?" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:110 +#~ msgid "Create Parameter Template" +#~ msgstr "Create Parameter Template" + +#: src/components/tables/part/PartParameterTemplateTable.tsx:112 +#~ msgid "Parameter template created" +#~ msgstr "Parameter template created" + +#: src/components/tables/part/PartTable.tsx:211 +#~ msgid "Detail" +#~ msgstr "Detail" + +#: src/components/tables/part/PartTestTemplateTable.tsx:30 +#~ msgid "Test Name" +#~ msgstr "Test Name" + +#: src/components/tables/part/PartTestTemplateTable.tsx:86 +#~ msgid "Template updated" +#~ msgstr "Template updated" + +#: src/components/tables/part/PartTestTemplateTable.tsx:98 +#~ msgid "Test Template deleted" +#~ msgstr "Test Template deleted" + +#: src/components/tables/part/PartTestTemplateTable.tsx:115 +#~ msgid "Create Test Template" +#~ msgstr "Create Test Template" + +#: src/components/tables/part/PartTestTemplateTable.tsx:117 +#~ msgid "Template created" +#~ msgstr "Template created" + +#: src/components/tables/part/RelatedPartTable.tsx:79 +#~ msgid "Related Part" +#~ msgstr "Related Part" + +#: src/components/tables/part/RelatedPartTable.tsx:82 +#~ msgid "Related part added" +#~ msgstr "Related part added" + +#: src/components/tables/part/RelatedPartTable.tsx:114 +#~ msgid "Related part deleted" +#~ msgstr "Related part deleted" + +#: src/components/tables/part/RelatedPartTable.tsx:115 +#~ msgid "Are you sure you want to remove this relationship?" +#~ msgstr "Are you sure you want to remove this relationship?" + +#: src/components/tables/plugin/PluginListTable.tsx:191 +#~ msgid "Installation path" +#~ msgstr "Installation path" + +#: src/components/tables/purchasing/PurchaseOrderLineItemTable.tsx:55 +#~ msgid "Receive" +#~ msgstr "Receive" + +#: src/components/tables/purchasing/PurchaseOrderLineItemTable.tsx:81 +#~ msgid "Line item updated" +#~ msgstr "Line item updated" + +#: src/components/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 +#~ msgid "Line item added" +#~ msgstr "Line item added" + +#: src/components/tables/settings/CustomUnitsTable.tsx:37 +#~ msgid "Definition" +#~ msgstr "Definition" + +#: src/components/tables/settings/CustomUnitsTable.tsx:43 +#~ msgid "Symbol" +#~ msgstr "Symbol" + +#: src/components/tables/settings/CustomUnitsTable.tsx:59 +#~ msgid "Edit custom unit" +#~ msgstr "Edit custom unit" + +#: src/components/tables/settings/CustomUnitsTable.tsx:66 +#~ msgid "Custom unit updated" +#~ msgstr "Custom unit updated" + +#: src/components/tables/settings/CustomUnitsTable.tsx:76 +#~ msgid "Delete custom unit" +#~ msgstr "Delete custom unit" + +#: src/components/tables/settings/CustomUnitsTable.tsx:77 +#~ msgid "Custom unit deleted" +#~ msgstr "Custom unit deleted" + +#: src/components/tables/settings/CustomUnitsTable.tsx:79 +#~ msgid "Are you sure you want to remove this custom unit?" +#~ msgstr "Are you sure you want to remove this custom unit?" + +#: src/components/tables/settings/CustomUnitsTable.tsx:97 +#~ msgid "Custom unit created" +#~ msgstr "Custom unit created" + +#: src/components/tables/settings/GroupTable.tsx:45 +#~ msgid "Group updated" +#~ msgstr "Group updated" + +#: src/components/tables/settings/GroupTable.tsx:131 +#~ msgid "Added group" +#~ msgstr "Added group" + +#: src/components/tables/settings/ProjectCodeTable.tsx:49 +#~ msgid "Edit project code" +#~ msgstr "Edit project code" + +#: src/components/tables/settings/ProjectCodeTable.tsx:56 +#~ msgid "Project code updated" +#~ msgstr "Project code updated" + +#: src/components/tables/settings/ProjectCodeTable.tsx:66 +#~ msgid "Delete project code" +#~ msgstr "Delete project code" + +#: src/components/tables/settings/ProjectCodeTable.tsx:67 +#~ msgid "Project code deleted" +#~ msgstr "Project code deleted" + +#: src/components/tables/settings/ProjectCodeTable.tsx:69 +#~ msgid "Are you sure you want to remove this project code?" +#~ msgstr "Are you sure you want to remove this project code?" + +#: src/components/tables/settings/ProjectCodeTable.tsx:88 +#~ msgid "Added project code" +#~ msgstr "Added project code" + +#: src/components/tables/settings/UserDrawer.tsx:92 +#~ msgid "User permission changed successfully" +#~ msgstr "User permission changed successfully" + +#: src/components/tables/settings/UserDrawer.tsx:93 +#~ msgid "Some changes might only take effect after the user refreshes their login." +#~ msgstr "Some changes might only take effect after the user refreshes their login." + +#: src/components/tables/settings/UserDrawer.tsx:118 +#~ msgid "Changed user active status successfully" +#~ msgstr "Changed user active status successfully" + +#: src/components/tables/settings/UserDrawer.tsx:119 +#~ msgid "Set to {active}" +#~ msgstr "Set to {active}" + +#: src/components/tables/settings/UserDrawer.tsx:142 +#~ msgid "User details for {0}" +#~ msgstr "User details for {0}" + +#: src/components/tables/settings/UserDrawer.tsx:176 +#~ msgid "Rights" +#~ msgstr "Rights" + +#: src/components/tables/settings/UserTable.tsx:106 +#~ msgid "User updated" +#~ msgstr "User updated" + +#: src/components/tables/settings/UserTable.tsx:117 +#~ msgid "user deleted" +#~ msgstr "user deleted" + +#: src/components/tables/settings/UserTable.tsx:168 +#~ msgid "First Name" +#~ msgstr "First Name" + +#: src/components/tables/settings/UserTable.tsx:173 +#~ msgid "Last Name" +#~ msgstr "Last Name" + +#: src/components/tables/settings/UserTable.tsx:186 +#~ msgid "Staff" +#~ msgstr "Staff" + +#: src/components/tables/settings/UserTable.tsx:190 +#~ msgid "Superuser" +#~ msgstr "Superuser" + +#: src/components/tables/stock/StockItemTable.tsx:247 +#~ msgid "Test Filter" +#~ msgstr "Test Filter" + +#: src/components/tables/stock/StockItemTable.tsx:248 +#~ msgid "This is a test filter" +#~ msgstr "This is a test filter" + +#: src/components/tables/stock/StockLocationTable.tsx:145 +#~ msgid "Stock location updated" +#~ msgstr "Stock location updated" + #: src/components/widgets/DisplayWidget.tsx:11 #: src/pages/Index/Settings/AccountSettings/DisplaySettingsPanel.tsx:17 msgid "Display Settings" @@ -1552,7 +2068,7 @@ msgstr "" #: src/components/widgets/DisplayWidget.tsx:21 #: src/pages/Index/Settings/AccountSettings/DisplaySettingsPanel.tsx:33 msgid "Language" -msgstr "" +msgstr "Keel" #: src/components/widgets/FeedbackWidget.tsx:19 msgid "Something is new: Platform UI" @@ -1570,6 +2086,14 @@ msgstr "" msgid "Getting started" msgstr "" +#: src/components/widgets/MarkdownEditor.tsx:108 +#~ msgid "Failed to upload image" +#~ msgstr "Failed to upload image" + +#: src/components/widgets/MarkdownEditor.tsx:146 +#~ msgid "Notes saved" +#~ msgstr "Notes saved" + #: src/components/widgets/WidgetLayout.tsx:166 msgid "Layout" msgstr "" @@ -1742,7 +2266,7 @@ msgstr "" #: src/defaults/links.tsx:26 #: src/defaults/menuItems.tsx:9 msgid "Home" -msgstr "" +msgstr "Avaleht" #: src/defaults/actions.tsx:23 #: src/defaults/links.tsx:27 @@ -1750,7 +2274,7 @@ msgstr "" #: src/pages/Index/Dashboard.tsx:19 #: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" -msgstr "" +msgstr "Töölaud" #: src/defaults/actions.tsx:24 msgid "Go to the InvenTree dashboard" @@ -1863,6 +2387,14 @@ msgstr "" msgid "Current News" msgstr "" +#: src/defaults/defaultHostList.tsx:8 +#~ msgid "InvenTree Demo" +#~ msgstr "InvenTree Demo" + +#: src/defaults/defaultHostList.tsx:16 +#~ msgid "Local Server" +#~ msgstr "Local Server" + #: src/defaults/links.tsx:11 #: src/pages/company/CompanyDetail.tsx:94 msgid "Website" @@ -1879,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -1892,9 +2424,9 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" -msgstr "" +msgstr "Müük" #: src/defaults/links.tsx:35 #: src/defaults/menuItems.tsx:71 @@ -1928,29 +2460,149 @@ msgstr "" #: src/defaults/links.tsx:68 msgid "FAQ" -msgstr "" +msgstr "KKK" #: src/defaults/links.tsx:69 msgid "Frequently asked questions" msgstr "" +#: src/defaults/links.tsx:76 +#~ msgid "Instance" +#~ msgstr "Instance" + #: src/defaults/links.tsx:79 #: src/defaults/links.tsx:116 msgid "System Information" msgstr "" +#: src/defaults/links.tsx:83 +#~ msgid "InvenTree" +#~ msgstr "InvenTree" + +#: src/defaults/links.tsx:117 +#~ msgid "Licenses for packages used by InvenTree" +#~ msgstr "Licenses for packages used by InvenTree" + #: src/defaults/links.tsx:128 msgid "Licenses" msgstr "" +#: src/defaults/menuItems.tsx:7 +#~ msgid "Open sourcea" +#~ msgstr "Open sourcea" + +#: src/defaults/menuItems.tsx:9 +#~ msgid "Open source" +#~ msgstr "Open source" + +#: src/defaults/menuItems.tsx:10 +#~ msgid "Start page of your instance." +#~ msgstr "Start page of your instance." + +#: src/defaults/menuItems.tsx:10 +#~ msgid "This Pokémon’s cry is very loud and distracting" +#~ msgstr "This Pokémon’s cry is very loud and distracting" + +#: src/defaults/menuItems.tsx:12 +#~ msgid "This Pokémon’s cry is very loud and distracting and more and more and more" +#~ msgstr "This Pokémon’s cry is very loud and distracting and more and more and more" + +#: src/defaults/menuItems.tsx:15 +#~ msgid "Profile page" +#~ msgstr "Profile page" + #: src/defaults/menuItems.tsx:17 msgid "User attributes and design settings." msgstr "" +#: src/defaults/menuItems.tsx:21 +#~ msgid "Free for everyone" +#~ msgstr "Free for everyone" + +#: src/defaults/menuItems.tsx:22 +#~ msgid "The fluid of Smeargle’s tail secretions changes" +#~ msgstr "The fluid of Smeargle’s tail secretions changes" + #: src/defaults/menuItems.tsx:23 msgid "View for interactive scanning and multiple actions." msgstr "" +#: src/defaults/menuItems.tsx:24 +#~ msgid "The fluid of Smeargle’s tail secretions changes in the intensity" +#~ msgstr "The fluid of Smeargle’s tail secretions changes in the intensity" + +#: src/defaults/menuItems.tsx:32 +#~ msgid "abc" +#~ msgstr "abc" + +#: src/defaults/menuItems.tsx:37 +#~ msgid "Random image" +#~ msgstr "Random image" + +#: src/defaults/menuItems.tsx:40 +#~ msgid "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Name liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assume. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, At accusam aliquyam diam diam dolore dolores duo eirmod eos erat, et nonumy sed tempor et et invidunt justo labore Stet clita ea et gubergren, kasd magna no rebum. sanctus sea sed takimata ut vero voluptua. est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor" +#~ msgstr "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore the feugait nulla facilisi. Name liber tempor cum soluta nobis eleifend option congue nihil imperdiet doming id quod mazim placerat facer possim assume. Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed diam nonummy nibh euismod tincidunt ut laoreet dolore magna aliquam erat volutpat. Ut wisi enim ad minim veniam, quis nostrud exerci tation ullamcorper suscipit lobortis nisl ut aliquip ex ea commodo consequat. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, At accusam aliquyam diam diam dolore dolores duo eirmod eos erat, et nonumy sed tempor et et invidunt justo labore Stet clita ea et gubergren, kasd magna no rebum. sanctus sea sed takimata ut vero voluptua. est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat. Consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor" + +#: src/defaults/menuItems.tsx:105 +#~ msgid "Yanma is capable of seeing 360 degrees without" +#~ msgstr "Yanma is capable of seeing 360 degrees without" + +#: src/defaults/menuItems.tsx:111 +#~ msgid "The shell’s rounded shape and the grooves on its." +#~ msgstr "The shell’s rounded shape and the grooves on its." + +#: src/defaults/menuItems.tsx:116 +#~ msgid "Analytics" +#~ msgstr "Analytics" + +#: src/defaults/menuItems.tsx:118 +#~ msgid "This Pokémon uses its flying ability to quickly chase" +#~ msgstr "This Pokémon uses its flying ability to quickly chase" + +#: src/defaults/menuItems.tsx:125 +#~ msgid "Combusken battles with the intensely hot flames it spews" +#~ msgstr "Combusken battles with the intensely hot flames it spews" + +#: src/forms/AttachmentForms.tsx:57 +#~ msgid "Add File" +#~ msgstr "Add File" + +#: src/forms/AttachmentForms.tsx:57 +#~ msgid "Add Link" +#~ msgstr "Add Link" + +#: src/forms/AttachmentForms.tsx:58 +#~ msgid "File added" +#~ msgstr "File added" + +#: src/forms/AttachmentForms.tsx:58 +#~ msgid "Link added" +#~ msgstr "Link added" + +#: src/forms/AttachmentForms.tsx:99 +#~ msgid "Edit File" +#~ msgstr "Edit File" + +#: src/forms/AttachmentForms.tsx:99 +#~ msgid "Edit Link" +#~ msgstr "Edit Link" + +#: src/forms/AttachmentForms.tsx:100 +#~ msgid "File updated" +#~ msgstr "File updated" + +#: src/forms/AttachmentForms.tsx:100 +#~ msgid "Link updated" +#~ msgstr "Link updated" + +#: src/forms/AttachmentForms.tsx:125 +#~ msgid "Attachment deleted" +#~ msgstr "Attachment deleted" + +#: src/forms/AttachmentForms.tsx:128 +#~ msgid "Are you sure you want to delete this attachment?" +#~ msgstr "Are you sure you want to delete this attachment?" + #: src/forms/BuildForms.tsx:146 msgid "Next serial number" msgstr "" @@ -1992,215 +2644,354 @@ msgstr "" msgid "Build outputs have been cancelled" msgstr "" +#: src/forms/CompanyForms.tsx:150 +#~ msgid "Company updated" +#~ msgstr "Company updated" + +#: src/forms/PartForms.tsx:106 +#~ msgid "Create Part" +#~ msgstr "Create Part" + +#: src/forms/PartForms.tsx:108 +#~ msgid "Part created" +#~ msgstr "Part created" + #: src/forms/PartForms.tsx:123 msgid "Parent part category" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PartForms.tsx:129 +#~ msgid "Part updated" +#~ msgstr "Part updated" + +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" -msgstr "" +msgstr "Asukoht" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Staatus" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Toimingud" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" -#: src/forms/StockForms.tsx:101 +#: src/forms/PurchaseOrderForms.tsx:658 +#~ msgid "Receive line items" +#~ msgstr "Receive line items" + +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:110 +#~ msgid "Create Stock Item" +#~ msgstr "Create Stock Item" + +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:414 -#: src/tables/stock/StockItemTable.tsx:531 +#: src/forms/StockForms.tsx:158 +#~ msgid "Stock item updated" +#~ msgstr "Stock item updated" + +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 #: src/pages/part/PartDetail.tsx:214 #: src/pages/part/PartDetail.tsx:763 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 +#: src/forms/StockForms.tsx:855 #: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 +#: src/forms/StockForms.tsx:864 #: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:34 +#~ msgid "Error fetching token from server." +#~ msgstr "Error fetching token from server." + +#: src/functions/auth.tsx:36 +#~ msgid "Logout successfull" +#~ msgstr "Logout successfull" + +#: src/functions/auth.tsx:60 +#~ msgid "See you soon." +#~ msgstr "See you soon." + +#: src/functions/auth.tsx:70 +#~ msgid "Logout successful" +#~ msgstr "Logout successful" + +#: src/functions/auth.tsx:71 +#~ msgid "You have been logged out" +#~ msgstr "You have been logged out" + +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:141 +#~ msgid "Already logged in" +#~ msgstr "Already logged in" + +#: src/functions/auth.tsx:142 +#~ msgid "Found an existing login - using it to log you in." +#~ msgstr "Found an existing login - using it to log you in." + +#: src/functions/auth.tsx:143 +#~ msgid "Found an existing login - welcome back!" +#~ msgstr "Found an existing login - welcome back!" + +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" +#: src/functions/forms.tsx:50 +#~ msgid "Form method not provided" +#~ msgstr "Form method not provided" + +#: src/functions/forms.tsx:59 +#~ msgid "Response did not contain action data" +#~ msgstr "Response did not contain action data" + +#: src/functions/forms.tsx:182 +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" + +#: src/functions/forms.tsx:183 +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" + #: src/functions/notifications.tsx:10 msgid "Not implemented" msgstr "" @@ -2239,7 +3030,7 @@ msgstr "" #: src/hooks/UseForm.tsx:128 msgid "Are you sure you want to delete this item?" -msgstr "" +msgstr "Kas olete kindel, et soovite selle üksuse kustutada?" #: src/pages/Auth/Logged-In.tsx:23 msgid "Checking if you are already logged in" @@ -2258,6 +3049,10 @@ msgstr "" msgid "Register below" msgstr "" +#: src/pages/Auth/Login.tsx:121 +#~ msgid "Edit host options" +#~ msgstr "Edit host options" + #: src/pages/Auth/Logout.tsx:23 msgid "Logging out" msgstr "" @@ -2303,6 +3098,10 @@ msgstr "" msgid "An unexpected error has occurred" msgstr "" +#: src/pages/ErrorPage.tsx:28 +#~ msgid "Sorry, an unexpected error has occurred." +#~ msgstr "Sorry, an unexpected error has occurred." + #: src/pages/Index/Dashboard.tsx:22 msgid "Autoupdate" msgstr "" @@ -2319,6 +3118,142 @@ msgstr "" msgid "This page is a showcase for the possibilities of Platform UI." msgstr "" +#: src/pages/Index/Profile/Profile.tsx:30 +#: src/pages/Index/Profile/Profile.tsx:141 +#~ msgid "Notification Settings" +#~ msgstr "Notification Settings" + +#: src/pages/Index/Profile/Profile.tsx:33 +#~ msgid "Global Settings" +#~ msgstr "Global Settings" + +#: src/pages/Index/Profile/Profile.tsx:47 +#~ msgid "Settings for the current user" +#~ msgstr "Settings for the current user" + +#: src/pages/Index/Profile/Profile.tsx:51 +#~ msgid "Home Page Settings" +#~ msgstr "Home Page Settings" + +#: src/pages/Index/Profile/Profile.tsx:76 +#~ msgid "Search Settings" +#~ msgstr "Search Settings" + +#: src/pages/Index/Profile/Profile.tsx:115 +#: src/pages/Index/Profile/Profile.tsx:211 +#~ msgid "Label Settings" +#~ msgstr "Label Settings" + +#: src/pages/Index/Profile/Profile.tsx:120 +#: src/pages/Index/Profile/Profile.tsx:219 +#~ msgid "Report Settings" +#~ msgstr "Report Settings" + +#: src/pages/Index/Profile/Profile.tsx:142 +#~ msgid "Settings for the notifications" +#~ msgstr "Settings for the notifications" + +#: src/pages/Index/Profile/Profile.tsx:148 +#~ msgid "Global Server Settings" +#~ msgstr "Global Server Settings" + +#: src/pages/Index/Profile/Profile.tsx:149 +#~ msgid "Global Settings for this instance" +#~ msgstr "Global Settings for this instance" + +#: src/pages/Index/Profile/Profile.tsx:153 +#~ msgid "Server Settings" +#~ msgstr "Server Settings" + +#: src/pages/Index/Profile/Profile.tsx:187 +#~ msgid "Login Settings" +#~ msgstr "Login Settings" + +#: src/pages/Index/Profile/Profile.tsx:202 +#~ msgid "Barcode Settings" +#~ msgstr "Barcode Settings" + +#: src/pages/Index/Profile/Profile.tsx:230 +#~ msgid "Part Settings" +#~ msgstr "Part Settings" + +#: src/pages/Index/Profile/Profile.tsx:255 +#~ msgid "Pricing Settings" +#~ msgstr "Pricing Settings" + +#: src/pages/Index/Profile/Profile.tsx:270 +#~ msgid "Stock Settings" +#~ msgstr "Stock Settings" + +#: src/pages/Index/Profile/Profile.tsx:284 +#~ msgid "Build Order Settings" +#~ msgstr "Build Order Settings" + +#: src/pages/Index/Profile/Profile.tsx:289 +#~ msgid "Purchase Order Settings" +#~ msgstr "Purchase Order Settings" + +#: src/pages/Index/Profile/Profile.tsx:300 +#~ msgid "Sales Order Settings" +#~ msgstr "Sales Order Settings" + +#: src/pages/Index/Profile/Profile.tsx:330 +#~ msgid "Plugin Settings for this instance" +#~ msgstr "Plugin Settings for this instance" + +#: src/pages/Index/Profile/SettingsPanel.tsx:27 +#~ msgid "Data is current beeing loaded" +#~ msgstr "Data is current beeing loaded" + +#: src/pages/Index/Profile/SettingsPanel.tsx:69 +#: src/pages/Index/Profile/SettingsPanel.tsx:76 +#~ msgid "Failed to load" +#~ msgstr "Failed to load" + +#: src/pages/Index/Profile/SettingsPanel.tsx:100 +#~ msgid "Show internal names" +#~ msgstr "Show internal names" + +#: src/pages/Index/Profile/SettingsPanel.tsx:148 +#~ msgid "Input {0} is not known" +#~ msgstr "Input {0} is not known" + +#: src/pages/Index/Profile/SettingsPanel.tsx:161 +#~ msgid "Saved changes {0}" +#~ msgstr "Saved changes {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:162 +#~ msgid "Changed to {0}" +#~ msgstr "Changed to {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:176 +#~ msgid "Error while saving {0}" +#~ msgstr "Error while saving {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:177 +#~ msgid "Error was {err}" +#~ msgstr "Error was {err}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:257 +#~ msgid "Plugin: {0}" +#~ msgstr "Plugin: {0}" + +#: src/pages/Index/Profile/SettingsPanel.tsx:262 +#~ msgid "Method: {0}" +#~ msgstr "Method: {0}" + +#: src/pages/Index/Profile/UserPanel.tsx:85 +#~ msgid "Userinfo" +#~ msgstr "Userinfo" + +#: src/pages/Index/Profile/UserPanel.tsx:122 +#~ msgid "Username: {0}" +#~ msgstr "Username: {0}" + +#: src/pages/Index/Profile/UserTheme.tsx:83 +#~ msgid "Design <0/>" +#~ msgstr "Design <0/>" + #: src/pages/Index/Scan.tsx:216 msgid "Manual input" msgstr "" @@ -2373,7 +3308,7 @@ msgstr "" #: src/pages/Index/Scan.tsx:325 msgid "Action" -msgstr "" +msgstr "Tegevus" #: src/pages/Index/Scan.tsx:334 msgid "{0} items selected" @@ -2448,6 +3383,14 @@ msgstr "" msgid "Last name" msgstr "" +#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:58 +#~ msgid "First name: {0}" +#~ msgstr "First name: {0}" + +#: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:61 +#~ msgid "Last name: {0}" +#~ msgstr "Last name: {0}" + #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:63 msgid "First name:" msgstr "" @@ -2573,6 +3516,14 @@ msgstr "" msgid "Loader" msgstr "" +#: src/pages/Index/Settings/AdminCenter.tsx:30 +#~ msgid "User Management" +#~ msgstr "User Management" + +#: src/pages/Index/Settings/AdminCenter.tsx:91 +#~ msgid "Advanced Amininistrative Options for InvenTree" +#~ msgstr "Advanced Amininistrative Options for InvenTree" + #: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" @@ -2589,6 +3540,10 @@ msgstr "" msgid "Currencies" msgstr "" +#: src/pages/Index/Settings/AdminCenter/Index.tsx:127 +#~ msgid "Templates" +#~ msgstr "Templates" + #: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" @@ -2644,6 +3599,18 @@ msgstr "" msgid "External plugins are not enabled for this InvenTree installation." msgstr "" +#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:33 +#~ msgid "Plugin Error Stack" +#~ msgstr "Plugin Error Stack" + +#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:45 +#~ msgid "Warning" +#~ msgstr "Warning" + +#: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:47 +#~ msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." +#~ msgstr "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." + #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:50 msgid "Plugin Errors" msgstr "" @@ -2675,6 +3642,47 @@ msgstr "" msgid "Failed Tasks" msgstr "" +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:39 +#~ msgid "Label" +#~ msgstr "Label" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:67 +#~ msgid "Stock item" +#~ msgstr "Stock item" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:76 +#~ msgid "Build line" +#~ msgstr "Build line" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:88 +#~ msgid "Reports" +#~ msgstr "Reports" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:89 +#: src/pages/build/BuildDetail.tsx:373 +#~ msgid "Report" +#~ msgstr "Report" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:99 +#~ msgid "Purchase order" +#~ msgstr "Purchase order" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:108 +#~ msgid "Sales order" +#~ msgstr "Sales order" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:117 +#~ msgid "Return order" +#~ msgstr "Return order" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:145 +#~ msgid "Tests" +#~ msgstr "Tests" + +#: src/pages/Index/Settings/AdminCenter/TemplateManagementPanel.tsx:154 +#~ msgid "Stock location" +#~ msgstr "Stock location" + #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:18 #: src/tables/settings/UserTable.tsx:135 msgid "Groups" @@ -2690,7 +3698,7 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:67 msgid "Login" -msgstr "" +msgstr "Logi sisse" #: src/pages/Index/Settings/SystemSettings.tsx:93 msgid "Barcodes" @@ -2700,6 +3708,14 @@ msgstr "" msgid "Pricing" msgstr "" +#: src/pages/Index/Settings/SystemSettings.tsx:118 +#~ msgid "Physical Units" +#~ msgstr "Physical Units" + +#: src/pages/Index/Settings/SystemSettings.tsx:135 +#~ msgid "Exchange Rates" +#~ msgstr "Exchange Rates" + #: src/pages/Index/Settings/SystemSettings.tsx:149 msgid "Labels" msgstr "" @@ -2711,7 +3727,6 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:236 #: src/pages/part/PartDetail.tsx:618 -#: src/tables/stock/StockItemTable.tsx:231 msgid "Stocktake" msgstr "" @@ -2719,7 +3734,7 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 #: src/pages/part/PartDetail.tsx:552 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" @@ -2747,6 +3762,26 @@ msgstr "" msgid "Switch to System Setting" msgstr "" +#: src/pages/Index/UserSettings.tsx:103 +#~ msgid "User Settings" +#~ msgstr "User Settings" + +#: src/pages/Logged-In.tsx:24 +#~ msgid "Found an exsisting login - using it to log you in." +#~ msgstr "Found an exsisting login - using it to log you in." + +#: src/pages/NotFound.tsx:17 +#~ msgid "Not Found" +#~ msgstr "Not Found" + +#: src/pages/NotFound.tsx:20 +#~ msgid "Sorry, this page is not known or was moved." +#~ msgstr "Sorry, this page is not known or was moved." + +#: src/pages/NotFound.tsx:27 +#~ msgid "Go to the start page" +#~ msgstr "Go to the start page" + #: src/pages/Notifications.tsx:43 msgid "Delete Notifications" msgstr "" @@ -2755,35 +3790,24 @@ msgstr "" msgid "Mark as unread" msgstr "" -#: src/pages/build/BuildDetail.tsx:93 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:335 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:291 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" +#: src/pages/build/BuildDetail.tsx:80 +#~ msgid "Build Status" +#~ msgstr "Build Status" #: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 -#: src/tables/build/BuildAllocatedStockTable.tsx:51 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" #: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 #: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 @@ -2800,7 +3824,7 @@ msgstr "" #: src/tables/plugin/PluginListTable.tsx:276 #: src/tables/stock/LocationTypesTable.tsx:65 msgid "Description" -msgstr "" +msgstr "Kirjeldus" #: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" @@ -2822,9 +3846,9 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:154 #: src/pages/part/PartDetail.tsx:342 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -2838,9 +3862,9 @@ msgid "Created" msgstr "" #: src/pages/build/BuildDetail.tsx:168 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" @@ -2849,6 +3873,12 @@ msgstr "" msgid "Completed" msgstr "" +#: src/pages/build/BuildDetail.tsx:185 +#: src/pages/part/PartDetail.tsx:269 +#: src/pages/stock/StockDetail.tsx:150 +#~ msgid "View part barcode" +#~ msgstr "View part barcode" + #: src/pages/build/BuildDetail.tsx:187 msgid "Source Location" msgstr "" @@ -2857,27 +3887,45 @@ msgstr "" msgid "Any location" msgstr "" +#: src/pages/build/BuildDetail.tsx:190 +#: src/pages/part/PartDetail.tsx:274 +#~ msgid "Link custom barcode to part" +#~ msgstr "Link custom barcode to part" + #: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" -#: src/pages/build/BuildDetail.tsx:201 -#: src/pages/stock/StockDetail.tsx:539 -#: src/tables/build/BuildAllocatedStockTable.tsx:63 -msgid "Batch Code" -msgstr "" +#: src/pages/build/BuildDetail.tsx:196 +#: src/pages/part/PartDetail.tsx:280 +#~ msgid "Unlink custom barcode from part" +#~ msgstr "Unlink custom barcode from part" + +#: src/pages/build/BuildDetail.tsx:202 +#~ msgid "Build Order updated" +#~ msgstr "Build Order updated" + +#: src/pages/build/BuildDetail.tsx:221 +#~ msgid "Edit build order" +#~ msgstr "Edit build order" + +#: src/pages/build/BuildDetail.tsx:226 +#~ msgid "Duplicate build order" +#~ msgstr "Duplicate build order" + +#: src/pages/build/BuildDetail.tsx:231 +#~ msgid "Delete build order" +#~ msgstr "Delete build order" #: src/pages/build/BuildDetail.tsx:233 msgid "Build Details" msgstr "" #: src/pages/build/BuildDetail.tsx:239 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 #: src/pages/sales/ReturnOrderDetail.tsx:108 #: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 +#: src/pages/sales/SalesOrderDetail.tsx:246 msgid "Line Items" msgstr "" @@ -2899,22 +3947,24 @@ msgstr "" #: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 +#: src/pages/company/ManufacturerPartDetail.tsx:176 #: src/pages/part/PartDetail.tsx:641 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" #: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 #: src/pages/part/PartDetail.tsx:649 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" @@ -2933,17 +3983,33 @@ msgstr "" msgid "Add Build Order" msgstr "" +#: src/pages/build/BuildDetail.tsx:368 +#~ msgid "Reporting Actions" +#~ msgstr "Reporting Actions" + +#: src/pages/build/BuildDetail.tsx:374 +#~ msgid "Print build report" +#~ msgstr "Print build report" + #: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" #: src/pages/build/BuildDetail.tsx:396 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" +#: src/pages/build/BuildIndex.tsx:23 +#~ msgid "Build order created" +#~ msgstr "Build order created" + +#: src/pages/build/BuildIndex.tsx:39 +#~ msgid "New Build Order" +#~ msgstr "New Build Order" + #: src/pages/company/CompanyDetail.tsx:102 msgid "Phone Number" msgstr "" @@ -2958,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -2970,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -2982,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -2993,7 +4059,11 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:170 #: src/tables/stock/StockTrackingTable.tsx:183 msgid "Details" -msgstr "" +msgstr "Üksikasjad" + +#: src/pages/company/CompanyDetail.tsx:175 +#~ msgid "Edit company" +#~ msgstr "Edit company" #: src/pages/company/CompanyDetail.tsx:176 msgid "Manufactured Parts" @@ -3003,6 +4073,10 @@ msgstr "" msgid "Supplied Parts" msgstr "" +#: src/pages/company/CompanyDetail.tsx:189 +#~ msgid "Delete company" +#~ msgstr "Delete company" + #: src/pages/company/CompanyDetail.tsx:230 msgid "Assigned Stock" msgstr "" @@ -3016,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 +#: src/pages/company/ManufacturerPartDetail.tsx:150 #: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 +#: src/pages/company/ManufacturerPartDetail.tsx:162 #: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -3236,7 +4294,7 @@ msgid "Category Default Location" msgstr "" #: src/pages/part/PartDetail.tsx:181 -#: src/tables/bom/BomTable.tsx:108 +#: src/tables/bom/BomTable.tsx:117 #: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" @@ -3252,14 +4310,14 @@ msgid "Keywords" msgstr "" #: src/pages/part/PartDetail.tsx:202 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" #: src/pages/part/PartDetail.tsx:220 -#: src/tables/bom/BomTable.tsx:305 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 #: src/tables/part/PartTable.tsx:282 msgid "Available Stock" @@ -3274,7 +4332,7 @@ msgid "Minimum Stock" msgstr "" #: src/pages/part/PartDetail.tsx:241 -#: src/tables/bom/BomTable.tsx:227 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" @@ -3288,13 +4346,13 @@ msgid "Allocated to Sales Orders" msgstr "" #: src/pages/part/PartDetail.tsx:265 -#: src/tables/bom/BomTable.tsx:251 -#: src/tables/bom/BomTable.tsx:283 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" #: src/pages/part/PartDetail.tsx:272 -#: src/tables/bom/BomTable.tsx:235 +#: src/tables/bom/BomTable.tsx:244 #: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" @@ -3314,7 +4372,7 @@ msgstr "" #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:286 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" @@ -3330,7 +4388,7 @@ msgid "Template Part" msgstr "" #: src/pages/part/PartDetail.tsx:296 -#: src/tables/bom/BomTable.tsx:300 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" @@ -3339,10 +4397,14 @@ msgid "Component Part" msgstr "" #: src/pages/part/PartDetail.tsx:306 -#: src/tables/bom/BomTable.tsx:295 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" +#: src/pages/part/PartDetail.tsx:310 +#~ msgid "Edit part" +#~ msgstr "Edit part" + #: src/pages/part/PartDetail.tsx:311 msgid "Purchaseable Part" msgstr "" @@ -3355,6 +4417,14 @@ msgstr "" msgid "Virtual Part" msgstr "" +#: src/pages/part/PartDetail.tsx:322 +#~ msgid "Duplicate part" +#~ msgstr "Duplicate part" + +#: src/pages/part/PartDetail.tsx:327 +#~ msgid "Delete part" +#~ msgstr "Delete part" + #: src/pages/part/PartDetail.tsx:329 #: src/tables/ColumnRenderers.tsx:214 msgid "Creation Date" @@ -3376,7 +4446,7 @@ msgid "Price Range" msgstr "" #: src/pages/part/PartDetail.tsx:399 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" @@ -3393,7 +4463,7 @@ msgid "Variants" msgstr "" #: src/pages/part/PartDetail.tsx:536 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" @@ -3427,12 +4497,12 @@ msgid "Related Parts" msgstr "" #: src/pages/part/PartDetail.tsx:769 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 #: src/tables/part/PartTable.tsx:117 #: src/tables/stock/StockItemTable.tsx:176 -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" @@ -3441,14 +4511,14 @@ msgid "No Stock" msgstr "" #: src/pages/part/PartDetail.tsx:781 -#: src/tables/bom/BomTable.tsx:310 +#: src/tables/bom/BomTable.tsx:319 #: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" #: src/pages/part/PartDetail.tsx:787 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" @@ -3472,7 +4542,7 @@ msgstr "" #: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:441 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" @@ -3492,6 +4562,10 @@ msgstr "" msgid "Select Part Revision" msgstr "" +#: src/pages/part/PartIndex.tsx:29 +#~ msgid "Categories" +#~ msgstr "Categories" + #: src/pages/part/PartPricingPanel.tsx:72 msgid "No pricing data found for this part." msgstr "" @@ -3533,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:175 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -3558,13 +4632,21 @@ msgstr "" msgid "Maximum Price" msgstr "" +#: src/pages/part/pricing/BomPricingPanel.tsx:112 +#~ msgid "Minimum Total Price" +#~ msgstr "Minimum Total Price" + +#: src/pages/part/pricing/BomPricingPanel.tsx:117 +#~ msgid "Maximum Total Price" +#~ msgstr "Maximum Total Price" + #: src/pages/part/pricing/BomPricingPanel.tsx:128 #: src/pages/part/pricing/PriceBreakPanel.tsx:168 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:166 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -3633,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -3645,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -3666,7 +4749,7 @@ msgstr "" #: src/tables/ColumnRenderers.tsx:195 #: src/tables/plugin/PluginListTable.tsx:139 msgid "Date" -msgstr "" +msgstr "Kuupäev" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:47 msgid "Purchase Price" @@ -3705,46 +4788,45 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 #: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:129 msgid "Order Currency" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:155 #: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 +#: src/pages/sales/SalesOrderDetail.tsx:136 msgid "Total Cost" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:159 +#: src/pages/sales/ReturnOrderDetail.tsx:126 +#: src/pages/sales/SalesOrderDetail.tsx:130 +#~ msgid "Order Currency," +#~ msgstr "Order Currency," + +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -3754,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -3768,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -3843,83 +4931,103 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:155 +#~ msgid "Link custom barcode to stock item" +#~ msgstr "Link custom barcode to stock item" + +#: src/pages/stock/StockDetail.tsx:161 +#~ msgid "Unlink custom barcode from stock item" +#~ msgstr "Unlink custom barcode from stock item" + +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:205 +#~ msgid "Edit stock item" +#~ msgstr "Edit stock item" + +#: src/pages/stock/StockDetail.tsx:217 +#~ msgid "Delete stock item" +#~ msgstr "Delete stock item" + +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:433 +#~ msgid "Duplicate stock item" +#~ msgstr "Duplicate stock item" + +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:446 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:455 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:475 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" @@ -3949,6 +5057,14 @@ msgstr "" msgid "Select Columns" msgstr "" +#: src/tables/DownloadAction.tsx:13 +#~ msgid "Excel" +#~ msgstr "Excel" + +#: src/tables/DownloadAction.tsx:21 +#~ msgid "Download selected data" +#~ msgstr "Download selected data" + #: src/tables/DownloadAction.tsx:22 msgid "CSV" msgstr "" @@ -3961,6 +5077,10 @@ msgstr "" msgid "Excel (.xlsx)" msgstr "" +#: src/tables/DownloadAction.tsx:24 +#~ msgid "Excel (.xls)" +#~ msgstr "Excel (.xls)" + #: src/tables/DownloadAction.tsx:38 msgid "Download Data" msgstr "" @@ -4026,67 +5146,72 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 -#: src/tables/InvenTreeTable.tsx:408 -#: src/tables/InvenTreeTable.tsx:429 +#: src/tables/InvenTreeTable.tsx:127 +#: src/tables/InvenTreeTable.tsx:409 +#: src/tables/InvenTreeTable.tsx:430 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:440 +#: src/tables/InvenTreeTable.tsx:441 msgid "Server returned incorrect data type" msgstr "" -#: src/tables/InvenTreeTable.tsx:448 +#: src/tables/InvenTreeTable.tsx:449 msgid "Bad request" msgstr "" -#: src/tables/InvenTreeTable.tsx:451 +#: src/tables/InvenTreeTable.tsx:452 msgid "Unauthorized" msgstr "" -#: src/tables/InvenTreeTable.tsx:454 +#: src/tables/InvenTreeTable.tsx:455 msgid "Forbidden" msgstr "" -#: src/tables/InvenTreeTable.tsx:457 +#: src/tables/InvenTreeTable.tsx:458 msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:505 -#: src/tables/InvenTreeTable.tsx:621 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:509 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:534 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:535 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" -#: src/tables/InvenTreeTable.tsx:611 -#: src/tables/InvenTreeTable.tsx:612 +#: src/tables/InvenTreeTable.tsx:594 +#: src/tables/InvenTreeTable.tsx:595 +#~ msgid "Print actions" +#~ msgstr "Print actions" + +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:640 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:661 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -4094,181 +5219,214 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:85 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:100 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:202 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 #: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:210 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:219 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:244 +#: src/tables/bom/BomTable.tsx:253 #: src/tables/part/PartTable.tsx:153 #: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:275 +#: src/tables/bom/BomTable.tsx:284 #: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:278 +#: src/tables/bom/BomTable.tsx:287 msgid "No available stock" msgstr "" -#: src/tables/bom/BomTable.tsx:296 +#: src/tables/bom/BomTable.tsx:301 +#~ msgid "Create BOM Item" +#~ msgstr "Create BOM Item" + +#: src/tables/bom/BomTable.tsx:305 msgid "Show trackable items" msgstr "" -#: src/tables/bom/BomTable.tsx:301 +#: src/tables/bom/BomTable.tsx:310 msgid "Show asssmbled items" msgstr "" -#: src/tables/bom/BomTable.tsx:306 +#: src/tables/bom/BomTable.tsx:315 msgid "Show items with available stock" msgstr "" -#: src/tables/bom/BomTable.tsx:311 +#: src/tables/bom/BomTable.tsx:320 msgid "Show items on order" msgstr "" -#: src/tables/bom/BomTable.tsx:315 +#: src/tables/bom/BomTable.tsx:324 msgid "Validated" msgstr "" -#: src/tables/bom/BomTable.tsx:316 +#: src/tables/bom/BomTable.tsx:325 msgid "Show validated items" msgstr "" -#: src/tables/bom/BomTable.tsx:320 +#: src/tables/bom/BomTable.tsx:329 #: src/tables/bom/UsedInTable.tsx:63 msgid "Inherited" msgstr "" -#: src/tables/bom/BomTable.tsx:321 +#: src/tables/bom/BomTable.tsx:330 #: src/tables/bom/UsedInTable.tsx:64 msgid "Show inherited items" msgstr "" -#: src/tables/bom/BomTable.tsx:325 +#: src/tables/bom/BomTable.tsx:331 +#~ msgid "Edit Bom Item" +#~ msgstr "Edit Bom Item" + +#: src/tables/bom/BomTable.tsx:333 +#~ msgid "Bom item updated" +#~ msgstr "Bom item updated" + +#: src/tables/bom/BomTable.tsx:334 msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:326 +#: src/tables/bom/BomTable.tsx:335 msgid "Show items which allow variant substitution" msgstr "" -#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/BomTable.tsx:339 #: src/tables/bom/UsedInTable.tsx:68 #: src/tables/build/BuildLineTable.tsx:46 msgid "Optional" msgstr "" -#: src/tables/bom/BomTable.tsx:331 +#: src/tables/bom/BomTable.tsx:340 #: src/tables/bom/UsedInTable.tsx:69 msgid "Show optional items" msgstr "" -#: src/tables/bom/BomTable.tsx:335 +#: src/tables/bom/BomTable.tsx:344 #: src/tables/build/BuildLineTable.tsx:41 msgid "Consumable" msgstr "" -#: src/tables/bom/BomTable.tsx:336 +#: src/tables/bom/BomTable.tsx:345 msgid "Show consumable items" msgstr "" -#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/BomTable.tsx:348 +#~ msgid "Delete Bom Item" +#~ msgstr "Delete Bom Item" + +#: src/tables/bom/BomTable.tsx:349 #: src/tables/part/PartTable.tsx:276 msgid "Has Pricing" msgstr "" -#: src/tables/bom/BomTable.tsx:341 +#: src/tables/bom/BomTable.tsx:349 +#~ msgid "Bom item deleted" +#~ msgstr "Bom item deleted" + +#: src/tables/bom/BomTable.tsx:350 msgid "Show items with pricing" msgstr "" -#: src/tables/bom/BomTable.tsx:350 -#: src/tables/bom/BomTable.tsx:478 +#: src/tables/bom/BomTable.tsx:351 +#~ msgid "Are you sure you want to remove this BOM item?" +#~ msgstr "Are you sure you want to remove this BOM item?" + +#: src/tables/bom/BomTable.tsx:354 +#~ msgid "Validate BOM line" +#~ msgstr "Validate BOM line" + +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 msgid "Add BOM Item" msgstr "" -#: src/tables/bom/BomTable.tsx:355 +#: src/tables/bom/BomTable.tsx:387 msgid "BOM item created" msgstr "" -#: src/tables/bom/BomTable.tsx:362 +#: src/tables/bom/BomTable.tsx:394 msgid "Edit BOM Item" msgstr "" -#: src/tables/bom/BomTable.tsx:364 +#: src/tables/bom/BomTable.tsx:396 msgid "BOM item updated" msgstr "" -#: src/tables/bom/BomTable.tsx:371 +#: src/tables/bom/BomTable.tsx:403 msgid "Delete BOM Item" msgstr "" -#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:404 msgid "BOM item deleted" msgstr "" -#: src/tables/bom/BomTable.tsx:385 -#: src/tables/bom/BomTable.tsx:388 -#: src/tables/bom/BomTable.tsx:472 +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 msgid "Validate BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:389 +#: src/tables/bom/BomTable.tsx:421 msgid "Do you want to validate the bill of materials for this assembly?" msgstr "" -#: src/tables/bom/BomTable.tsx:392 +#: src/tables/bom/BomTable.tsx:424 msgid "BOM validated" msgstr "" -#: src/tables/bom/BomTable.tsx:404 +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:413 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:425 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:434 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:451 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:493 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:498 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -4286,37 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:34 +#: src/tables/build/BuildAllocatedStockTable.tsx:35 msgid "Allocated to Output" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:35 +#: src/tables/build/BuildAllocatedStockTable.tsx:36 msgid "Show items allocated to a build output" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:57 +#: src/tables/build/BuildAllocatedStockTable.tsx:58 msgid "Allocated Quantity" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:70 +#: src/tables/build/BuildAllocatedStockTable.tsx:78 msgid "Available Quantity" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:80 +#: src/tables/build/BuildAllocatedStockTable.tsx:88 #: src/tables/build/BuildOutputTable.tsx:253 msgid "Build Output" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:97 +#: src/tables/build/BuildAllocatedStockTable.tsx:105 msgid "Edit Build Item" msgstr "" -#: src/tables/build/BuildAllocatedStockTable.tsx:107 +#: src/tables/build/BuildAllocatedStockTable.tsx:115 msgid "Delete Build Item" msgstr "" #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -4337,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:361 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -4430,6 +5588,10 @@ msgstr "" msgid "Complete selected outputs" msgstr "" +#: src/tables/build/BuildOutputTable.tsx:161 +#~ msgid "Delete build output" +#~ msgstr "Delete build output" + #: src/tables/build/BuildOutputTable.tsx:167 msgid "Scrap selected outputs" msgstr "" @@ -4508,6 +5670,10 @@ msgstr "" msgid "Are you sure you want to delete this address?" msgstr "" +#: src/tables/company/CompanyTable.tsx:71 +#~ msgid "New Company" +#~ msgstr "New Company" + #: src/tables/company/CompanyTable.tsx:74 #: src/tables/company/CompanyTable.tsx:123 msgid "Add Company" @@ -4597,6 +5763,10 @@ msgstr "" msgid "Add external link" msgstr "" +#: src/tables/general/AttachmentTable.tsx:254 +#~ msgid "Upload attachment" +#~ msgstr "Upload attachment" + #: src/tables/general/AttachmentTable.tsx:299 msgid "No attachments found" msgstr "" @@ -4683,6 +5853,10 @@ msgstr "" msgid "Driver Settings" msgstr "" +#: src/tables/machine/MachineListTable.tsx:494 +#~ msgid "Create machine" +#~ msgstr "Create machine" + #: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" @@ -4795,7 +5969,7 @@ msgstr "" #: src/tables/part/ParametricPartTable.tsx:232 #: src/tables/part/PartTable.tsx:190 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/stock/StockItemTable.tsx:299 msgid "Assembly" msgstr "" @@ -4850,6 +6024,10 @@ msgstr "" msgid "Parameter Template" msgstr "" +#: src/tables/part/PartCategoryTemplateTable.tsx:93 +#~ msgid "[{0}]" +#~ msgstr "[{0}]" + #: src/tables/part/PartParameterTable.tsx:112 msgid "New Part Parameter" msgstr "" @@ -4868,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5175,6 +6353,10 @@ msgstr "" msgid "An error occurred while fetching plugin details" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:113 +#~ msgid "Plugin with id {id} not found" +#~ msgstr "Plugin with id {id} not found" + #: src/tables/plugin/PluginListTable.tsx:122 msgid "Plugin information" msgstr "" @@ -5183,6 +6365,20 @@ msgstr "" msgid "Author" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:134 +#~ msgid "Plugin Actions" +#~ msgstr "Plugin Actions" + +#: src/tables/plugin/PluginListTable.tsx:138 +#: src/tables/plugin/PluginListTable.tsx:141 +#~ msgid "Edit plugin" +#~ msgstr "Edit plugin" + +#: src/tables/plugin/PluginListTable.tsx:152 +#: src/tables/plugin/PluginListTable.tsx:153 +#~ msgid "Reload" +#~ msgstr "Reload" + #: src/tables/plugin/PluginListTable.tsx:154 msgid "Plugin is not active" msgstr "" @@ -5247,14 +6443,54 @@ msgstr "" msgid "Activate Plugin" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:338 +#~ msgid "Deactivate Plugin" +#~ msgstr "Deactivate Plugin" + +#: src/tables/plugin/PluginListTable.tsx:354 +#~ msgid "The following plugin will be activated" +#~ msgstr "The following plugin will be activated" + +#: src/tables/plugin/PluginListTable.tsx:355 +#~ msgid "The following plugin will be deactivated" +#~ msgstr "The following plugin will be deactivated" + #: src/tables/plugin/PluginListTable.tsx:362 msgid "Deactivate" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:366 +#~ msgid "Confirm" +#~ msgstr "Confirm" + #: src/tables/plugin/PluginListTable.tsx:373 msgid "Activate" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:376 +#~ msgid "Activating plugin" +#~ msgstr "Activating plugin" + +#: src/tables/plugin/PluginListTable.tsx:376 +#~ msgid "Deactivating plugin" +#~ msgstr "Deactivating plugin" + +#: src/tables/plugin/PluginListTable.tsx:392 +#~ msgid "Plugin updated" +#~ msgstr "Plugin updated" + +#: src/tables/plugin/PluginListTable.tsx:394 +#~ msgid "The plugin was activated" +#~ msgstr "The plugin was activated" + +#: src/tables/plugin/PluginListTable.tsx:395 +#~ msgid "The plugin was deactivated" +#~ msgstr "The plugin was deactivated" + +#: src/tables/plugin/PluginListTable.tsx:403 +#~ msgid "Error updating plugin" +#~ msgstr "Error updating plugin" + #: src/tables/plugin/PluginListTable.tsx:406 msgid "Uninstall" msgstr "" @@ -5324,76 +6560,109 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" +#: src/tables/plugin/PluginListTable.tsx:615 +#~ msgid "Plugin detail" +#~ msgstr "Plugin detail" + #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:59 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:108 msgid "Add Parameter" msgstr "" +#: src/tables/purchasing/ManufacturerPartParameterTable.tsx:60 +#~ msgid "Parameter updated" +#~ msgstr "Parameter updated" + #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:70 msgid "Edit Parameter" msgstr "" +#: src/tables/purchasing/ManufacturerPartParameterTable.tsx:73 +#~ msgid "Parameter deleted" +#~ msgstr "Parameter deleted" + +#: src/tables/purchasing/ManufacturerPartParameterTable.tsx:74 +#~ msgid "Are you sure you want to delete this parameter?" +#~ msgstr "Are you sure you want to delete this parameter?" + #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:78 msgid "Delete Parameter" msgstr "" +#: src/tables/purchasing/ManufacturerPartTable.tsx:63 +#~ msgid "Create Manufacturer Part" +#~ msgstr "Create Manufacturer Part" + #: src/tables/purchasing/ManufacturerPartTable.tsx:92 msgid "Delete Manufacturer Part" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/ManufacturerPartTable.tsx:100 +#~ msgid "Manufacturer part updated" +#~ msgstr "Manufacturer part updated" + +#: src/tables/purchasing/ManufacturerPartTable.tsx:112 +#~ msgid "Manufacturer part deleted" +#~ msgstr "Manufacturer part deleted" + +#: src/tables/purchasing/ManufacturerPartTable.tsx:114 +#~ msgid "Are you sure you want to remove this manufacturer part?" +#~ msgstr "Are you sure you want to remove this manufacturer part?" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -5425,6 +6694,10 @@ msgstr "" msgid "Show active internal parts" msgstr "" +#: src/tables/purchasing/SupplierPartTable.tsx:193 +#~ msgid "Supplier part updated" +#~ msgstr "Supplier part updated" + #: src/tables/purchasing/SupplierPartTable.tsx:197 msgid "Active Supplier" msgstr "" @@ -5433,6 +6706,14 @@ msgstr "" msgid "Show active suppliers" msgstr "" +#: src/tables/purchasing/SupplierPartTable.tsx:205 +#~ msgid "Supplier part deleted" +#~ msgstr "Supplier part deleted" + +#: src/tables/purchasing/SupplierPartTable.tsx:207 +#~ msgid "Are you sure you want to remove this supplier part?" +#~ msgstr "Are you sure you want to remove this supplier part?" + #: src/tables/purchasing/SupplierPartTable.tsx:218 msgid "Delete Supplier Part" msgstr "" @@ -5481,6 +6762,10 @@ msgstr "" msgid "Delete Error Report" msgstr "" +#: src/tables/settings/ErrorTable.tsx:51 +#~ msgid "Delete error report" +#~ msgstr "Delete error report" + #: src/tables/settings/ErrorTable.tsx:53 msgid "Are you sure you want to delete this error report?" msgstr "" @@ -5622,6 +6907,18 @@ msgstr "" msgid "An error occurred while fetching template details" msgstr "" +#: src/tables/settings/TemplateTable.tsx:120 +#~ msgid "{templateTypeTranslation} with id {id} not found" +#~ msgstr "{templateTypeTranslation} with id {id} not found" + +#: src/tables/settings/TemplateTable.tsx:124 +#~ msgid "An error occurred while fetching {templateTypeTranslation} details" +#~ msgstr "An error occurred while fetching {templateTypeTranslation} details" + +#: src/tables/settings/TemplateTable.tsx:146 +#~ msgid "actions" +#~ msgstr "actions" + #: src/tables/settings/TemplateTable.tsx:170 msgid "Modify" msgstr "" @@ -5643,6 +6940,14 @@ msgstr "" msgid "Add Template" msgstr "" +#: src/tables/settings/TemplateTable.tsx:243 +#~ msgid "Add new" +#~ msgstr "Add new" + +#: src/tables/settings/TemplateTable.tsx:243 +#~ msgid "Create new" +#~ msgstr "Create new" + #: src/tables/settings/TemplateTable.tsx:249 msgid "Add template" msgstr "" @@ -5773,297 +7078,314 @@ msgstr "" msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:257 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:287 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:312 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:317 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" -msgstr "" +msgstr "Kaasa varude üksused variantosade jaoks" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" -msgstr "" +msgstr "Näita varude üksusi, mis on paigaldatud teistesse üksustesse" -#: src/tables/stock/StockItemTable.tsx:342 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" -msgstr "" +msgstr "Kliendile saadetud" -#: src/tables/stock/StockItemTable.tsx:343 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" -msgstr "" +msgstr "Näita üksusi, mis on saadetud kliendile" -#: src/tables/stock/StockItemTable.tsx:347 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" -msgstr "" +msgstr "On serialiseeritud" -#: src/tables/stock/StockItemTable.tsx:348 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" -msgstr "" +msgstr "Näita üksusi, millel on seerianumber" -#: src/tables/stock/StockItemTable.tsx:355 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" -msgstr "" +msgstr "Omab partiikoodi" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" -msgstr "" +msgstr "Näita üksusi, millel on partiikood" -#: src/tables/stock/StockItemTable.tsx:362 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" -msgstr "" +msgstr "Näita jälgitavaid üksusi" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" -msgstr "" +msgstr "Omab ostuhinda" -#: src/tables/stock/StockItemTable.tsx:367 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" -msgstr "" +msgstr "Näita üksusi, millel on ostuhind" -#: src/tables/stock/StockItemTable.tsx:375 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" -msgstr "" +msgstr "Väline asukoht" -#: src/tables/stock/StockItemTable.tsx:376 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" -msgstr "" +msgstr "Näita üksusi välises asukohas" -#: src/tables/stock/StockItemTable.tsx:448 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" -msgstr "" +msgstr "Lisa uus varuüksus" -#: src/tables/stock/StockItemTable.tsx:457 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" -msgstr "" +msgstr "Eemalda osa kogust varuüksusest" -#: src/tables/stock/StockItemTable.tsx:479 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" -msgstr "" - -#: src/tables/stock/StockItemTable.tsx:486 -msgid "Change stock status" -msgstr "" +msgstr "Liiguta varuüksused uutesse asukohtadesse" #: src/tables/stock/StockItemTable.tsx:488 -msgid "Change the status of stock items" -msgstr "" +msgid "Change stock status" +msgstr "Muuda varu staatust" -#: src/tables/stock/StockItemTable.tsx:495 -msgid "Merge stock" -msgstr "" +#: src/tables/stock/StockItemTable.tsx:490 +msgid "Change the status of stock items" +msgstr "Muuda varuüksuste staatust" #: src/tables/stock/StockItemTable.tsx:497 -msgid "Merge stock items" -msgstr "" +msgid "Merge stock" +msgstr "Ühenda varu" -#: src/tables/stock/StockItemTable.tsx:504 -msgid "Order stock" -msgstr "" +#: src/tables/stock/StockItemTable.tsx:499 +msgid "Merge stock items" +msgstr "Ühenda varuüksused" #: src/tables/stock/StockItemTable.tsx:506 -#: src/tables/stock/StockItemTable.tsx:512 +msgid "Order stock" +msgstr "Tellige varu" + +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" -msgstr "" +msgstr "Tellige uus varu" -#: src/tables/stock/StockItemTable.tsx:510 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" -msgstr "" - -#: src/tables/stock/StockItemTable.tsx:519 -msgid "Delete stock" -msgstr "" +msgstr "Määrake kliendile" #: src/tables/stock/StockItemTable.tsx:521 +msgid "Delete stock" +msgstr "Kustuta varu" + +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" -msgstr "" +msgstr "Kustuta varuüksused" #: src/tables/stock/StockItemTestResultTable.tsx:126 msgid "Test" -msgstr "" +msgstr "Test" #: src/tables/stock/StockItemTestResultTable.tsx:152 msgid "Test result for installed stock item" -msgstr "" +msgstr "Paigaldatud varuüksuse testi tulemus" #: src/tables/stock/StockItemTestResultTable.tsx:163 msgid "Result" -msgstr "" +msgstr "Tulemus" #: src/tables/stock/StockItemTestResultTable.tsx:169 msgid "No Result" -msgstr "" +msgstr "Tulemus puudub" #: src/tables/stock/StockItemTestResultTable.tsx:185 msgid "Attachment" -msgstr "" +msgstr "Manus" #: src/tables/stock/StockItemTestResultTable.tsx:201 msgid "Test station" -msgstr "" +msgstr "Testijaam" #: src/tables/stock/StockItemTestResultTable.tsx:221 msgid "Finished" -msgstr "" +msgstr "Lõpetatud" #: src/tables/stock/StockItemTestResultTable.tsx:252 #: src/tables/stock/StockItemTestResultTable.tsx:324 #: src/tables/stock/StockItemTestResultTable.tsx:379 msgid "Add Test Result" -msgstr "" +msgstr "Lisa testi tulemus" #: src/tables/stock/StockItemTestResultTable.tsx:254 msgid "Test result added" -msgstr "" +msgstr "Testi tulemus lisatud" #: src/tables/stock/StockItemTestResultTable.tsx:263 #: src/tables/stock/StockItemTestResultTable.tsx:334 msgid "Edit Test Result" -msgstr "" +msgstr "Muuda testi tulemust" #: src/tables/stock/StockItemTestResultTable.tsx:265 msgid "Test result updated" -msgstr "" +msgstr "Testi tulemus uuendatud" #: src/tables/stock/StockItemTestResultTable.tsx:271 #: src/tables/stock/StockItemTestResultTable.tsx:343 msgid "Delete Test Result" -msgstr "" +msgstr "Kustuta testi tulemus" #: src/tables/stock/StockItemTestResultTable.tsx:273 msgid "Test result deleted" -msgstr "" +msgstr "Testi tulemus kustutatud" #: src/tables/stock/StockItemTestResultTable.tsx:287 msgid "Test Passed" -msgstr "" +msgstr "Test läbitud" #: src/tables/stock/StockItemTestResultTable.tsx:288 msgid "Test result has been recorded" -msgstr "" +msgstr "Testi tulemus on salvestatud" #: src/tables/stock/StockItemTestResultTable.tsx:295 msgid "Failed to record test result" -msgstr "" +msgstr "Testi tulemuse salvestamine ebaõnnestus" #: src/tables/stock/StockItemTestResultTable.tsx:312 msgid "Pass Test" -msgstr "" +msgstr "Läbige test" #: src/tables/stock/StockItemTestResultTable.tsx:361 msgid "Show results for required tests" -msgstr "" +msgstr "Näita kohustuslike testide tulemusi" #: src/tables/stock/StockItemTestResultTable.tsx:365 msgid "Include Installed" -msgstr "" +msgstr "Kaasa paigaldatud" #: src/tables/stock/StockItemTestResultTable.tsx:366 msgid "Show results for installed stock items" -msgstr "" +msgstr "Näita paigaldatud varude tulemusi" #: src/tables/stock/StockItemTestResultTable.tsx:370 msgid "Passed" -msgstr "" +msgstr "Läbitud" #: src/tables/stock/StockItemTestResultTable.tsx:371 msgid "Show only passed tests" -msgstr "" +msgstr "Näita ainult läbitud teste" + +#: src/tables/stock/StockLocationTable.tsx:38 +#~ msgid "structural" +#~ msgstr "structural" #: src/tables/stock/StockLocationTable.tsx:43 msgid "Include sublocations in results" -msgstr "" +msgstr "Kaasa tulemuste alamsaidid" + +#: src/tables/stock/StockLocationTable.tsx:43 +#~ msgid "external" +#~ msgstr "external" #: src/tables/stock/StockLocationTable.tsx:48 msgid "Show structural locations" -msgstr "" +msgstr "Näita struktuurseid asukohti" #: src/tables/stock/StockLocationTable.tsx:53 msgid "Show external locations" -msgstr "" +msgstr "Näita väliseid asukohti" #: src/tables/stock/StockLocationTable.tsx:57 msgid "Has location type" -msgstr "" +msgstr "Omab asukoha tüüpi" #: src/tables/stock/StockLocationTable.tsx:62 msgid "Filter by location type" -msgstr "" +msgstr "Filtreeri asukoha tüübi järgi" #: src/tables/stock/StockLocationTable.tsx:99 #: src/tables/stock/StockLocationTable.tsx:124 msgid "Add Stock Location" -msgstr "" +msgstr "Lisa varude asukoht" #: src/tables/stock/StockTrackingTable.tsx:64 msgid "Added" -msgstr "" +msgstr "Lisatud" #: src/tables/stock/StockTrackingTable.tsx:69 msgid "Removed" -msgstr "" +msgstr "Eemaldatud" #: src/tables/stock/StockTrackingTable.tsx:198 msgid "No user information" -msgstr "" +msgstr "Kasutajateave puudub" #: src/views/MobileAppView.tsx:22 msgid "Mobile viewport detected" -msgstr "" +msgstr "Mobiilivaade tuvastatud" #: src/views/MobileAppView.tsx:25 msgid "Platform UI is optimized for Tablets and Desktops, you can use the official app for a mobile experience." -msgstr "" +msgstr "Platvormi kasutajaliides on optimeeritud tahvelarvutitele ja lauaarvutitele, mobiilikogemuse saamiseks saate kasutada ametlikku rakendust." #: src/views/MobileAppView.tsx:31 msgid "Read the docs" -msgstr "" +msgstr "Loe dokumente" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" -msgstr "" +msgstr "Eira ja jätka töölaua vaates" + diff --git a/src/frontend/src/locales/fa/messages.po b/src/frontend/src/locales/fa/messages.po index d2e0e1c52f..57297bf4d6 100644 --- a/src/frontend/src/locales/fa/messages.po +++ b/src/frontend/src/locales/fa/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fa\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Persian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/fi/messages.po b/src/frontend/src/locales/fi/messages.po index f9b199506b..f8acab25a8 100644 --- a/src/frontend/src/locales/fi/messages.po +++ b/src/frontend/src/locales/fi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Finnish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/fr/messages.po b/src/frontend/src/locales/fr/messages.po index 305c911dac..198c66e371 100644 --- a/src/frontend/src/locales/fr/messages.po +++ b/src/frontend/src/locales/fr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: fr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: French\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" @@ -38,41 +38,49 @@ msgstr "Ouvrir dans l'interface d'administration" msgid "Copy to clipboard" msgstr "Copier dans le Presse-papier" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Imprimer l'étiquette" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Impression terminée avec succès" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Erreur" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "L'étiquette n'a pas pu être générée" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Imprimer le rapport" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Impression terminée avec succès" @@ -113,25 +121,25 @@ msgstr "Réussi" msgid "Fail" msgstr "Échec" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Oui" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Non" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "Aucun nom défini" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Copié" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Copier" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Supprimer l'image associée de cet élément ?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Supprimer" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Annuler" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Effacer" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Charger une image" msgid "Delete image" msgstr "Supprimer l'image" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "La pièce n'est pas active" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inactif" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "La pièce est une pièce modèle (des variantes peuvent être faites à partir de cette pièce)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "La pièce peut être assemblée à partir d'autres pièces" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "La pièce peut être utilisée dans des assemblages" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Le stock de la pièce est suivi par numéro de série" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "La pièce peut être achetée auprès de fournisseurs externes" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "La pièce peut être vendue aux clients" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "La pièce est virtuelle (pas une partie physique)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtuel" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "Le téléchargement de l'image a échoué" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Succès" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Erreur de formulaire" @@ -431,18 +405,17 @@ msgstr "Erreur de formulaire" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Mise à jour" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Login invalide" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Vérifiez votre saisie et réessayez." @@ -487,7 +460,7 @@ msgstr "Vérifiez votre saisie et réessayez." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Envoi du mail réussi" @@ -615,7 +588,7 @@ msgstr "Serveur" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Rechercher" @@ -683,11 +656,11 @@ msgstr "Chargement" msgid "No results found" msgstr "Aucun résultat trouvé" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "Aucune entrée n'est disponible" @@ -700,114 +673,159 @@ msgstr "Aucune entrée n'est disponible" msgid "Thumbnail" msgstr "Miniature" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Actions de code-barres" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Vue" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Voir le code-barre" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Lier le code-barre" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Lier un code-barre personnalisé" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Délier le code-barre" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Délier le code-barres personnalisé" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Éditer" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Supprimer l’article" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Dupliquer" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Dupliquer l'article" @@ -1172,13 +1190,13 @@ msgstr "Paramètres du compte" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Les paramètres du système" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Centre Admin" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Pages" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Extensions" @@ -1235,25 +1253,25 @@ msgstr "Documentation" msgid "About" msgstr "À propos" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Notifications" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Vous n'avez pas de notifications non lues." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Notification" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Marqué comme lu" @@ -1262,50 +1280,52 @@ msgstr "Marqué comme lu" msgid "results" msgstr "résultats" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Entrez un texte à rechercher" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Options de recherche" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Recherche par regex" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Recherche par mot entier" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Une erreur s'est produite lors de la recherche" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Aucun résultat" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Aucun résultat disponible pour la requête" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Modèle inconnu : {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Pièce" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Composants" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "Modèles de test de pièces" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Pièce fournisseur" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Pièces du fournisseur" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "Pièces du fabricant" @@ -1369,12 +1390,12 @@ msgstr "Catégorie de composant" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Catégories de composants" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Article en stock" @@ -1394,7 +1415,7 @@ msgstr "Emplacement du stock" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Emplacements de stock" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Société" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Sociétés" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Sociétés" msgid "Project Code" msgstr "Code du projet" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Codes du projet" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "Commande d’achat" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Ordres d'achat" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "Ligne de commande d'achat" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "Lignes de commande d'achat" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Ventes" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Ordres de vente" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Expédition de la commande" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Expéditions de la commande" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Retour de commande" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Retours" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Adresse" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Adresses" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Contact" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Contacts" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Propriétaire" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Utilisateur" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Utilisateurs" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inactif" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "Aucun stock" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Stock" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Numéro de série" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" -msgstr "Turc" +msgid "Swedish" +msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 +msgid "Turkish" +msgstr "Turc" + +#: src/contexts/LanguageContext.tsx:52 +msgid "Ukrainian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Vietnamien" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Chinois (Simplifié)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Chinois (Traditionnel)" @@ -2229,7 +2272,7 @@ msgstr "Page d’accueil" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Tableau de bord" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Mis à jour récemment" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Stock faible" @@ -2368,10 +2411,10 @@ msgstr "Démo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Achat en cours" @@ -2381,7 +2424,7 @@ msgstr "Achat en cours" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Ventes" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Catégorie de pièce parente" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "Catégorie de pièce parente" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Catégorie de pièce parente" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Status" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Actions" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "Ajouter une quantité en paquet au lieu de pièces individuelles" @@ -2706,15 +2824,15 @@ msgstr "Ajouter une quantité en paquet au lieu de pièces individuelles" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "Entrez la quantité initiale pour cet article en stock" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Numéros de Série" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Entrez les numéros de série pour le nouveau stock (ou laisser vide)" @@ -2722,94 +2840,82 @@ msgstr "Entrez les numéros de série pour le nouveau stock (ou laisser vide)" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "Ajouter un article en stock" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Actions" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Vérifiez votre boîte de réception pour un lien de réinitialisation. Cela ne fonctionne que si vous avez un compte. Vérifiez également dans le spam." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "Échec de la réinitialisation" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Chargeur" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "Tâches en arrière plan" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "Rapports d'erreur" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Unités personnalisées" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Paramètres de la pièce" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Actions rapides" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Ajouter un utilisateur" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "Options avancées" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Ordres de fabrication" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Compte" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Options d’affichage" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Paramètres du compte" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Status" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "Responsable" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "Date cible" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "Révision" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Catégorie" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "Emplacement par défaut" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "Révision" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Unités" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "Mots-clés" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Lien" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "Stock Minimum" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "Sur commande" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "Alloué à l'ordre de construction" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "Alloué aux ordres de ventes" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "Peut être construit" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "Construire" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "Date de création" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "Date de création" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "Fournisseur par Défaut" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Échelle des prix" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "Dernier inventaire" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "Variants" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "Allocations" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "Disponible" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "Prix total" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "La pièce n'est pas active" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Ajouter un filtre" msgid "Clear Filters" msgstr "Effacer filtres" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Accès interdit" msgid "Not found" msgstr "Elément non trouvé" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "Supprimer les enregistrements sélectionnés" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "Êtes-vous sûr de vouloir supprimer les enregistrements sélectionnés ?" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "Cette action ne peut pas être annulée !" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "Enregistrement supprimé" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "Les enregistrements ont été supprimés avec succès" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "Échec de la suppression des enregistrements" @@ -5100,16 +5202,16 @@ msgstr "Échec de la suppression des enregistrements" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Actions de code-barres" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Actualiser les données" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Filtres de tableau" @@ -5117,128 +5219,81 @@ msgstr "Filtres de tableau" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "Cet article de nomenclature est défini pour un autre parent" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "Information de pièce" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "Aucun stock" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "Comprend un stock de remplacement" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "Inclut le stock de variantes" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "Information de stock" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "Article consommable" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "Optionnel" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" +msgid "Show trackable items" msgstr "" -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" -msgstr "Consommable" - #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" msgstr "" +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "Optionnel" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "Consommable" + #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtuel" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Lire la documentation" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/he/messages.po b/src/frontend/src/locales/he/messages.po index 352da7976c..38dda585fe 100644 --- a/src/frontend/src/locales/he/messages.po +++ b/src/frontend/src/locales/he/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: he\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:37\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/hi/messages.po b/src/frontend/src/locales/hi/messages.po index b65822a68c..807ac36cf7 100644 --- a/src/frontend/src/locales/hi/messages.po +++ b/src/frontend/src/locales/hi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: hi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Hindi\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "हाँ" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "लॉगिन असफल" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/hu/messages.po b/src/frontend/src/locales/hu/messages.po index 720cbbfc4a..f92bfac596 100644 --- a/src/frontend/src/locales/hu/messages.po +++ b/src/frontend/src/locales/hu/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: hu\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "Vágólapra másolás" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Hiba" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "Sikeres" msgid "Fail" msgstr "Megbukott" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Igen" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Nem" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Másolva" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Másolás" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Tételhez rendelt kép eltávolítása?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Eltávolítás" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Mégsem" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Törlés" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Kép feltöltése" msgid "Delete image" msgstr "Kép törlése" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Az alkatrész nem aktív" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inaktív" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Sablon alkatrész (változatok létrehozhatók belőle)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Ez az alkatrész gyártható másik alkatrészekből" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Használható más alkatrészek gyártásához" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Készlet sorozatszám alapján követendő" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Beszállítótól rendelhető" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Vevő által megvehető" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Virtuális (nem kézzelfogható alkatrész)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtuális" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Siker" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Form hiba" @@ -431,18 +405,17 @@ msgstr "Form hiba" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Frissítés" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Belépés sikertelen" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Ellenőrizd amit beírtál és próbáld újra." @@ -487,7 +460,7 @@ msgstr "Ellenőrizd amit beírtál és próbáld újra." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Levél kézbesítése sikeres" @@ -615,7 +588,7 @@ msgstr "Kiszolgáló" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Státusz: <0>worker ({0}), <1>plugins{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Keresés" @@ -683,11 +656,11 @@ msgstr "Betöltés" msgid "No results found" msgstr "Nincs találat" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "Bélyegkép" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "Kész" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Vonalkód műveletek" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Megtekintés" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Vonalkód megtekintése" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Vonalkód hozzárendelése" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Egyedi vonalkód hozzárendelése" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Vonalkód leválasztása" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Egyedi vonalkód leválasztása" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Szerkesztés" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Tétel törlése" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Másolás" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Elem másolása" @@ -1172,13 +1190,13 @@ msgstr "Fiókbeállítások" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Rendszerbeállítások" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Admin központ" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Oldalak" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Pluginok" @@ -1235,25 +1253,25 @@ msgstr "Dokumentáció" msgid "About" msgstr "Névjegy" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Értesítések" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Nincs olvasatlan értesítésed." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Értesítés" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Megjelölés olvasottként" @@ -1262,50 +1280,52 @@ msgstr "Megjelölés olvasottként" msgid "results" msgstr "eredmények" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Írd be a keresett szöveget" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Keresési opciók" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Regex keresés" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Teljes szó keresés" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Hiba történt a keresés közben" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Nincs találat" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Nincs találat a keresésre" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Ismeretlen model: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Alkatrész" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Alkatrészek" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Beszállítói alkatrész" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Beszállítói alkatrészek" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "Gyártói alkatrész" @@ -1369,12 +1390,12 @@ msgstr "Alkatrész kategória" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Alkatrész kategóriák" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Készlet tétel" @@ -1394,7 +1415,7 @@ msgstr "Készlet hely" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Készlethelyek" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Cég" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Cégek" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Cégek" msgid "Project Code" msgstr "Projektszám" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Projektszámok" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "Beszerzési rendelés" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Beszerzési rendelések" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "Beszerzési rendelés tétel" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "Beszerzési rendelés tételei" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Vevői rendelés" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Vevői rendelések" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Vevői rendelés szállítmány" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Vevői rendelés szállítmányok" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Visszavétel" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Visszavételek" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Cím" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Címek" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Kapcsolat" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Kapcsolatok" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Tulajdonos" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Tulajdonosok" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Felhasználó" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Felhasználók" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "Szállítmány" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inaktív" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "Nincs készlet" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Készlet" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Sorozatszám" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "Dobozok megjelenítése" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bolgár" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Cseh" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Dán" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "Német" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Görög" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "Angol" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Spanyol" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Spanyol (Mexikói)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Fárszi/Perzsa" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finn" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "Francia" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Héber" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindi" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Magyar" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Olasz" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japán" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Koreai" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Holland" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norvég" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Lengyel" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Portugál" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Portugál (Brazíliai)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Orosz" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Szlovén" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Svéd" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Tháj" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Török" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Vietnámi" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Kínai (egyszerűsített)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Kínai (Hagyományos)" @@ -2229,7 +2272,7 @@ msgstr "Főoldal" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Irányítópult" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Nemrég frissítve" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Alacsony készlet" @@ -2368,10 +2411,10 @@ msgstr "Demó" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Beszerzés" @@ -2381,7 +2424,7 @@ msgstr "Beszerzés" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Eladás" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Felsőbb szintű alkatrész kategória" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "Felsőbb szintű alkatrész kategória" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Felsőbb szintű alkatrész kategória" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "Hely" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "Alapértelmezett helyre tárolás" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "Tárolás a tétel sor célhelyén" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "Tárolás a már megérkezett készlettel" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Állapot" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "Fogadott" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Műveletek" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "Mennyiség hozzáadása csomagolási egységenként egyedi tételek helyett" @@ -2706,15 +2824,15 @@ msgstr "Mennyiség hozzáadása csomagolási egységenként egyedi tételek hely #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "Add meg a kezdeti mennyiséget ehhez a készlet tételhez" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Sorozatszámok" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Add meg az új készlet tételhez tartozó sorozatszámokat (vagy hagyd üresen)" @@ -2722,94 +2840,82 @@ msgstr "Add meg az új készlet tételhez tartozó sorozatszámokat (vagy hagyd #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "Új készlet tétel" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "Mozgatás az alapértelmezett helyre" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "Készleten" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "Áthelyezés" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Műveletek" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Hozzáadás" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "Mennyiség" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "Készlethez ad" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "Készlet csökkentése" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "Készlet áthelyezése" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "Leltározás" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "Készlet állapot módosítása" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "Készlet összevonása" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "Készlet tétel törlése" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "Szülő készlet hely" @@ -2833,11 +2939,11 @@ msgstr "Szülő készlet hely" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "Kijelentkezve" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "Sikeresen kijelentkeztél" @@ -2853,20 +2959,20 @@ msgstr "Sikeresen kijelentkeztél" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Nézd meg a beérkező levelek mappájában a visszaállítási linket. Ez csak akkor működik, ha van fiókod. Ellenőrizd a spameket is." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "Visszaállítás sikertelen" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "Bejelentkezve" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "Sikeres bejelentkezés" @@ -2879,12 +2985,12 @@ msgstr "Sikeres bejelentkezés" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "Érvénytelen űrlap" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "metódus paraméter nem támogatott" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Betöltő" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "Háttér műveletek" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "Hibajelentések" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "Pénznemek" @@ -3438,37 +3544,37 @@ msgstr "Pénznemek" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Egyedi mértékegységek" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Alkatrész paraméterek" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "Kategória paraméterek" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "Berendezések" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Gyors műveletek" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Új felhasználó hozzáadása" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "További beállítások" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Címkék" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Riportolás" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "Leltár" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Gyártási utasítások" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Felhasználói beállításra váltás" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Fiók" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Biztonság" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Megjelenítési beállítások" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Fiókbeállítások" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "Rendszer beállításra váltás" @@ -3689,36 +3794,22 @@ msgstr "Megjelölés olvasatlanként" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Állapot" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "Hivatkozás" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "Hivatkozás" msgid "Description" msgstr "Leírás" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "Szülő gyártás" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "Gyártási mennyiség" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "Befejezett kimenetek" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "Felelős" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "Cél dátum" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "Gyártás részletei" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" -msgstr "Készlet foglalása" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" +msgstr "Gyártás részletei" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "Sortételek" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "Befejezetlen kimenetek" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "Felhasznált készlet" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "Alárendelt gyártások" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "Mellékletek" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "Megjegyzések" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "Gyártási utasítás szerkesztése" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "Gyártási utasítás létrehozása" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "Gyártáshoz foglalások" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "Beszállító" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "Gyártó" @@ -3953,7 +4048,7 @@ msgstr "Gyártó" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "Cég szerkesztése" msgid "Company Actions" msgstr "Cég műveletek" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Paraméterek" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "Beszállítók" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "Csomagolási mennyiség" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "Beérkezett készlet" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "Beszállítói alkatrész szerkesztése" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "Beszállítói alkatrész hozzáadása" @@ -4187,145 +4266,156 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Kategória" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "IPN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Mértékegységek" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Link" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "Rendelve" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "Gyártható" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "Gyártásban" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Aktív" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "Gyártmány alkatrész" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "Létrehozás dátuma" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" -msgstr "Készítette" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" +msgstr "" #: src/pages/part/PartDetail.tsx:322 #~ msgid "Duplicate part" @@ -4335,130 +4425,143 @@ msgstr "Készítette" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "Létrehozás dátuma" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "Készítette" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "Alapértelmezett beszállító" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Ártartomány" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "Utolsó leltár" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "Leltárazta" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "Alkatrész részletei" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "Változatok" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "Foglalások" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "Alkatrészjegyzék" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "Felhasználva ebben" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "Alkatrész árak" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "Gyártók" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "Ütemezés" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "Teszt sablonok" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "Kapcsolódó alkatrészek" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "Elérhető" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "Nincs készlet" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "Rendelve" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "Gyártásban" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "Alkatrész szerkesztése" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "Alkatrész hozzáadása" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "Készlet műveletek" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "Készlet számolása" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "Készlet áthelyezése" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "Alkatrész műveletek" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "Eladási előzmények" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "Teljes ár" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Összetevő" @@ -4542,8 +4645,8 @@ msgstr "Maximum ár" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "Egységár" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "Általános árazás" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "Legutóbb frissítve" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "Nincs elérhető adat" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "Nincs adat" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "Ár adatok nem elérhetőek" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,27 +4788,23 @@ msgstr "Beszerzés hozzáadása" msgid "Supplier Reference" msgstr "Beszállítói azonosító" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "Sortételek" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "Kész sortételek" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "Kész szállítmányok" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" +msgstr "Teljes költség" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 #: src/pages/sales/ReturnOrderDetail.tsx:126 @@ -4712,33 +4812,21 @@ msgstr "Kész szállítmányok" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "Teljes költség" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "Létrehozva" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "Rendelés részletei" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "Rendelés műveletek" @@ -4748,6 +4836,12 @@ msgstr "Rendelés műveletek" msgid "Customer Reference" msgstr "Vevői azonosító" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "Kész szállítmányok" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "Vevők" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "Függő szállítmányok" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "Kiindulási alkatrész" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "Készlettörténet" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "Teszt adatok" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "Beépített tételek" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "Gyermek tételek" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "Készlet tétel szerkesztése" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "Készlet műveletek" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "Leltározás" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "Készlethez ad" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "Készlet csökkentése" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "Áthelyezés" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "Készlet áthelyezése" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Az alkatrész nem aktív" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Szűrő hozzáadása" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Tiltott" msgid "Not found" msgstr "Nem található" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Vonalkód műveletek" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Adatok frissítése" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Táblaszűrők" @@ -5117,128 +5219,81 @@ msgstr "Táblaszűrők" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "Ez a beépülő alkatrész másik szülő alkatrészhez lett felvéve" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "Alkatrész információ" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "Nincs készlet" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "Helyettesítőkkel együtt" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "Változatokkal együtt" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "Készlet adatok" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "Fogyóeszköz tétel" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "Opcionális" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" +msgid "Show trackable items" msgstr "" -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" -msgstr "Fogyóeszköz" - #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" msgstr "" +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "Opcionális" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "Fogyóeszköz" + #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "Alkatrészjegyzék megtekintése" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "Helyettesítő alkatrészek szerkesztése" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Követésre kötelezett" @@ -5324,8 +5444,37 @@ msgstr "Követésre kötelezett" msgid "Show trackable assemblies" msgstr "Nyomonkövethető gyártmányok mutatása" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "Gyártás kimenet" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "Opcionális sorok mutatása" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "Követett" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "Gyártásban" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "Nincs elérhető készlet" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "Mennyiségi egység" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "Készlet foglalása" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "Készlet rendelés" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "Gyártási készlet" @@ -5475,10 +5632,6 @@ msgstr "Gyártási kimenet selejtezése" msgid "Cancel build output" msgstr "Gyártási kimenet visszavonása" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "Gyártás kimenet" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "Köteg" @@ -5622,81 +5775,81 @@ msgstr "Nem találhatók mellékletek" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "Életkor" msgid "Message" msgstr "Üzenet" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "Alkatrész paraméter szerkesztése" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Gyártmány" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Alkategóriákkal együtt" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "Változatok is" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Van mértékegysége" @@ -5920,120 +6091,137 @@ msgstr "Paraméter sablon törlés" msgid "Add parameter template" msgstr "Paraméter sablon létrehozás" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "Minimális készlet" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "Gyártáshoz foglalások" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "Vevői rendeléshez foglalások" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Szűrés aktív státusz szerint" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Gyártmány" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Szűrés szerelési tulajdonság szerint" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Alkategóriákkal együtt" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Szűrés összetevő tulajdonság szerint" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Szűrés követésre kötelezettség szerint" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Szűrés meglévő mértékegység szerint" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "Van IPN-je" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Szűrés meglévő IPN szerint" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "Van készlet" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Szűrés meglévő készlet szerint" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Szűrés alacsony készlet szerint" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Beszerezhető" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Szűrés beszerezhetőség szerint" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Értékesíthető" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Szűrés értékesíthetőség szerint" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtuális" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Szűrés virtuális alkatrészek szerint" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Nem virtuális" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "Minta" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "Telepítve" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "Alkatrész leírása" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "Teljes mennyiség" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "Fogadott" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "Beszállítói kód" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "Beszállítói link" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "Gyártói kód" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "Cél" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "Sortétel hozzáadása" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "Sortétel szerkesztése" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "Sortétel bevételezése" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "Sortétel hozzáadása" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "Bevételezés" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "Csoport törlése" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "Csoport törölve" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "Biztos, hogy törölni szeretné ezt a csoportot?" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "Csoport hozzáadása" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "Csoport szerkesztése" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "Ez a készlet tétel gyártásban van" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "Készlet tétel beépült egy másikba" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "Készlet tétel fel lett használva egy gyártásban" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "Készlet tétel lejárt" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "Készlet tétel lejárt" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "Készlet tétel teljesen foglalva" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "Készlet tétel részlegesen foglalva" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "Készlet tétel elfogyott" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Olvasd el a dokumentációt" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/id/messages.po b/src/frontend/src/locales/id/messages.po index 2c5f84ed31..0bf40bfafb 100644 --- a/src/frontend/src/locales/id/messages.po +++ b/src/frontend/src/locales/id/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: id\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -38,39 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 -#: src/components/editors/NotesEditor.tsx:160 -#: src/components/forms/ApiForm.tsx:506 -#: src/components/forms/fields/ApiFormField.tsx:295 +#: src/components/editors/NotesEditor.tsx:165 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 -#: src/tables/InvenTreeTable.tsx:451 -#: src/tables/InvenTreeTable.tsx:526 -#: src/tables/bom/BomTable.tsx:363 +#: src/tables/InvenTreeTable.tsx:470 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -111,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -142,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:499 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -175,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:573 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -201,80 +210,61 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -msgid "Part is not active" -msgstr "" +#: src/components/details/PartIcons.tsx:43 +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" -#: src/components/details/PartIcons.tsx:34 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:685 -msgid "Inactive" -msgstr "" +#: src/components/details/PartIcons.tsx:49 +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" -#: src/components/details/PartIcons.tsx:41 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#: src/components/details/PartIcons.tsx:55 +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" -#: src/components/details/PartIcons.tsx:47 -msgid "Part can be assembled from other parts" -msgstr "" +#: src/components/details/PartIcons.tsx:61 +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" -#: src/components/details/PartIcons.tsx:53 -msgid "Part can be used in assemblies" -msgstr "" +#: src/components/details/PartIcons.tsx:67 +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" -#: src/components/details/PartIcons.tsx:59 -msgid "Part stock is tracked by serial number" -msgstr "" +#: src/components/details/PartIcons.tsx:73 +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" -#: src/components/details/PartIcons.tsx:65 -msgid "Part can be purchased from external suppliers" -msgstr "" - -#: src/components/details/PartIcons.tsx:71 -msgid "Part can be sold to customers" -msgstr "" - -#: src/components/details/PartIcons.tsx:76 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:82 -#: src/tables/part/PartTable.tsx:234 -#: src/tables/part/PartTable.tsx:238 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#: src/components/details/PartIcons.tsx:78 +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" -#: src/components/editors/NotesEditor.tsx:151 -#: src/components/forms/ApiForm.tsx:430 -#: src/tables/bom/BomTable.tsx:354 +#: src/components/editors/NotesEditor.tsx:156 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" -#: src/components/editors/NotesEditor.tsx:152 +#: src/components/editors/NotesEditor.tsx:157 msgid "Notes saved successfully" msgstr "" -#: src/components/editors/NotesEditor.tsx:161 +#: src/components/editors/NotesEditor.tsx:166 msgid "Failed to save notes" msgstr "" -#: src/components/editors/NotesEditor.tsx:193 +#: src/components/editors/NotesEditor.tsx:198 msgid "Preview Notes" msgstr "" -#: src/components/editors/NotesEditor.tsx:193 +#: src/components/editors/NotesEditor.tsx:198 msgid "Edit Notes" msgstr "" -#: src/components/editors/NotesEditor.tsx:207 +#: src/components/editors/NotesEditor.tsx:212 msgid "Save Notes" msgstr "" @@ -407,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:149 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -416,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:611 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:631 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:498 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -462,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -472,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -600,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:122 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -652,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -668,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -685,51 +673,214 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/importer/ImportDataSelector.tsx:166 +msgid "Importing Rows" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:167 +msgid "Please wait while the data is imported" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:184 +msgid "An error occurred while importing data" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:205 +msgid "Edit Data" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:233 +msgid "Delete Row" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:263 +msgid "Row" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:281 +msgid "Row contains errors" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:322 +msgid "Accept" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:355 +msgid "Valid" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:356 +msgid "Filter by row validation status" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:361 +#: src/tables/build/BuildOutputTable.tsx:205 +msgid "Complete" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:362 +msgid "Filter by row completion status" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:379 +msgid "Import selected rows" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 +msgid "An error occurred" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:62 +msgid "Select column, or leave blank to ignore this field." +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:91 +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" + +#: src/components/importer/ImporterColumnSelector.tsx:104 +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 +msgid "Accept Column Mapping" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:214 +msgid "Database Field" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:215 +msgid "Field Description" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:45 +msgid "Upload File" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:46 +msgid "Map Columns" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 +msgid "Complete Import" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" +msgstr "" + +#: src/components/importer/ImporterImportProgress.tsx:36 +msgid "Importing Records" +msgstr "" + +#: src/components/importer/ImporterImportProgress.tsx:39 +msgid "Imported rows" +msgstr "" + +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -738,7 +889,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:5 -#: src/tables/InvenTreeTable.tsx:443 +#: src/tables/InvenTreeTable.tsx:462 msgid "Unknown error" msgstr "" @@ -1039,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:313 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:198 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1088,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:157 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1102,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:78 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:95 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:111 -#: src/components/nav/NotificationDrawer.tsx:117 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:140 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1129,50 +1280,53 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:166 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:831 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 +#: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 msgid "Part" @@ -1185,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:639 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1206,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1218,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1235,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:821 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1260,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1299,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1316,137 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:109 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:257 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:272 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:580 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:288 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 +#: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:85 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:206 +msgid "Import Sessions" +msgstr "" + +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:201 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:139 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:145 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1454,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1543,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -1641,10 +1823,6 @@ msgstr "" #~ msgid "Comment" #~ msgstr "Comment" -#: src/components/tables/general/AttachmentTable.tsx:56 -#~ msgid "Uploaded" -#~ msgstr "Uploaded" - #: src/components/tables/part/PartCategoryTable.tsx:122 #~ msgid "Part category updated" #~ msgstr "Part category updated" @@ -1865,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -1945,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2090,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2157,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2229,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2242,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2466,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:100 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2478,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 -#: src/tables/ColumnRenderers.tsx:34 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 +#: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2559,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2567,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2583,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:382 -#: src/tables/stock/StockItemTable.tsx:499 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:202 -#: src/pages/part/PartDetail.tsx:655 -#: src/tables/stock/StockItemTable.tsx:290 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:782 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:771 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2694,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2714,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2740,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3279,53 +3524,57 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:91 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 +msgid "Data Import" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:97 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:103 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:121 -msgid "Custom Units" -msgstr "" - -#: src/pages/Index/Settings/AdminCenter/Index.tsx:127 -#: src/pages/part/CategoryDetail.tsx:257 -msgid "Part Parameters" -msgstr "" - #: src/pages/Index/Settings/AdminCenter/Index.tsx:127 #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:133 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 +msgid "Custom Units" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 +#: src/pages/part/CategoryDetail.tsx:257 +msgid "Part Parameters" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:151 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:163 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:173 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:178 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3472,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:593 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:527 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:316 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3546,40 +3794,27 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/stock/StockItemTable.tsx:259 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 -#: src/tables/ColumnRenderers.tsx:106 +#: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:129 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 #: src/pages/stock/LocationDetail.tsx:101 -#: src/tables/ColumnRenderers.tsx:66 +#: src/tables/ColumnRenderers.tsx:81 #: src/tables/machine/MachineTypeTable.tsx:69 #: src/tables/machine/MachineTypeTable.tsx:112 #: src/tables/machine/MachineTypeTable.tsx:219 @@ -3591,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:317 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3621,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 -#: src/tables/ColumnRenderers.tsx:191 +#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3657,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3666,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3683,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:616 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:624 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3752,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3785,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3797,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3809,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3851,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:117 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4043,278 +4266,302 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:135 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:142 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:148 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:155 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:169 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:190 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:208 -#: src/tables/bom/BomTable.tsx:276 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:215 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:221 -#: src/tables/bom/BomTable.tsx:217 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:230 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:238 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:245 -#: src/tables/bom/BomTable.tsx:241 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:252 -#: src/tables/bom/BomTable.tsx:225 -#: src/tables/part/PartTable.tsx:82 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:261 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:168 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:254 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:266 -msgid "Template Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:271 -#: src/tables/bom/BomTable.tsx:271 -msgid "Assembled Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:276 -msgid "Component Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:281 -#: src/tables/bom/BomTable.tsx:266 -msgid "Trackable Part" -msgstr "" - #: src/pages/part/PartDetail.tsx:286 -msgid "Purchaseable Part" +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" msgstr "" #: src/pages/part/PartDetail.tsx:291 -msgid "Saleable Part" +msgid "Template Part" msgstr "" #: src/pages/part/PartDetail.tsx:296 -msgid "Virtual Part" +#: src/tables/bom/BomTable.tsx:309 +msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:304 -#: src/tables/ColumnRenderers.tsx:199 -msgid "Creation Date" +#: src/pages/part/PartDetail.tsx:301 +msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:309 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 +msgid "Trackable Part" msgstr "" #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" +msgstr "" + #: src/pages/part/PartDetail.tsx:322 #~ msgid "Duplicate part" #~ msgstr "Duplicate part" -#: src/pages/part/PartDetail.tsx:324 -msgid "Default Supplier" -msgstr "" - #: src/pages/part/PartDetail.tsx:327 #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:335 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 +msgid "Default Supplier" +msgstr "" + +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:151 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:374 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:409 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:480 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:506 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:513 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:520 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:534 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:541 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:587 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:599 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:610 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:661 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:107 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:275 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:667 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:673 -#: src/tables/bom/BomTable.tsx:281 -#: src/tables/part/PartTable.tsx:76 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:679 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:295 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:698 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:705 -#: src/tables/part/PartTable.tsx:289 -#: src/tables/part/PartTable.tsx:302 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:726 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:764 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:409 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:772 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:783 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:792 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4359,8 +4606,8 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 -#: src/tables/ColumnRenderers.tsx:241 -#: src/tables/bom/BomTable.tsx:165 +#: src/tables/ColumnRenderers.tsx:256 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4369,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4398,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:156 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4468,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4480,25 +4728,25 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:40 #: src/pages/part/pricing/SaleHistoryPanel.tsx:36 -#: src/tables/ColumnRenderers.tsx:180 +#: src/tables/ColumnRenderers.tsx:195 #: src/tables/plugin/PluginListTable.tsx:139 msgid "Date" msgstr "" @@ -4540,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4568,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4604,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4618,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4693,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4709,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4730,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4762,46 +5000,54 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:414 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:423 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:443 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" -#: src/tables/ColumnRenderers.tsx:42 +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" -#: src/tables/ColumnRenderers.tsx:207 +#: src/tables/ColumnRenderers.tsx:222 msgid "Shipment Date" msgstr "" -#: src/tables/ColumnRenderers.tsx:227 +#: src/tables/ColumnRenderers.tsx:242 #: src/tables/settings/CurrencyTable.tsx:23 msgid "Currency" msgstr "" @@ -4828,14 +5074,14 @@ msgid "TSV" msgstr "" #: src/tables/DownloadAction.tsx:24 -msgid "Excel (.xls)" -msgstr "" - -#: src/tables/DownloadAction.tsx:25 msgid "Excel (.xlsx)" msgstr "" -#: src/tables/DownloadAction.tsx:39 +#: src/tables/DownloadAction.tsx:24 +#~ msgid "Excel (.xls)" +#~ msgstr "Excel (.xls)" + +#: src/tables/DownloadAction.tsx:38 msgid "Download Data" msgstr "" @@ -4900,54 +5146,54 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:119 -#: src/tables/InvenTreeTable.tsx:390 -#: src/tables/InvenTreeTable.tsx:411 +#: src/tables/InvenTreeTable.tsx:127 +#: src/tables/InvenTreeTable.tsx:409 +#: src/tables/InvenTreeTable.tsx:430 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:422 +#: src/tables/InvenTreeTable.tsx:441 msgid "Server returned incorrect data type" msgstr "" -#: src/tables/InvenTreeTable.tsx:430 +#: src/tables/InvenTreeTable.tsx:449 msgid "Bad request" msgstr "" -#: src/tables/InvenTreeTable.tsx:433 +#: src/tables/InvenTreeTable.tsx:452 msgid "Unauthorized" msgstr "" -#: src/tables/InvenTreeTable.tsx:436 +#: src/tables/InvenTreeTable.tsx:455 msgid "Forbidden" msgstr "" -#: src/tables/InvenTreeTable.tsx:439 +#: src/tables/InvenTreeTable.tsx:458 msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:488 -#: src/tables/InvenTreeTable.tsx:606 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:492 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:494 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:527 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -4956,175 +5202,153 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:596 -#: src/tables/InvenTreeTable.tsx:597 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:625 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:646 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" -#: src/tables/bom/BomTable.tsx:80 +#: src/tables/UploadAction.tsx:9 +msgid "Upload Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:95 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:184 -#: src/tables/part/PartTable.tsx:124 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:192 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:115 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:200 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:209 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:234 -#: src/tables/part/PartTable.tsx:143 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:246 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:267 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:272 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:277 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:282 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:286 -msgid "Validated" -msgstr "" - #: src/tables/bom/BomTable.tsx:287 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:291 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:292 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:296 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:297 -msgid "Show items which allow variant substitution" -msgstr "" - -#: src/tables/bom/BomTable.tsx:301 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:302 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" +#: src/tables/bom/BomTable.tsx:305 +msgid "Show trackable items" msgstr "" -#: src/tables/bom/BomTable.tsx:306 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +#: src/tables/bom/BomTable.tsx:310 +msgid "Show asssmbled items" msgstr "" -#: src/tables/bom/BomTable.tsx:307 -msgid "Show consumable items" +#: src/tables/bom/BomTable.tsx:315 +msgid "Show items with available stock" msgstr "" -#: src/tables/bom/BomTable.tsx:311 -#: src/tables/part/PartTable.tsx:250 -msgid "Has Pricing" +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" -#: src/tables/bom/BomTable.tsx:312 -msgid "Show items with pricing" +#: src/tables/bom/BomTable.tsx:324 +msgid "Validated" msgstr "" -#: src/tables/bom/BomTable.tsx:321 -#: src/tables/bom/BomTable.tsx:420 -msgid "Add BOM Item" +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" -#: src/tables/bom/BomTable.tsx:326 -msgid "BOM item created" +#: src/tables/bom/BomTable.tsx:329 +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 #~ msgid "Edit Bom Item" #~ msgstr "Edit Bom Item" -#: src/tables/bom/BomTable.tsx:333 -msgid "Edit BOM Item" -msgstr "" - #: src/tables/bom/BomTable.tsx:333 #~ msgid "Bom item updated" #~ msgstr "Bom item updated" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" +msgstr "" + #: src/tables/bom/BomTable.tsx:335 -msgid "BOM item updated" +msgid "Show items which allow variant substitution" msgstr "" -#: src/tables/bom/BomTable.tsx:342 -msgid "Delete BOM Item" +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" msgstr "" -#: src/tables/bom/BomTable.tsx:343 -msgid "BOM item deleted" +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "" + +#: src/tables/bom/BomTable.tsx:345 +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5133,32 +5357,85 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:355 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:364 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:376 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:385 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:399 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" +#: src/tables/bom/BomTable.tsx:532 +#: src/tables/part/PartParameterTable.tsx:191 +msgid "Part is Locked" +msgstr "" + +#: src/tables/bom/BomTable.tsx:537 +msgid "Bill of materials cannot be edited, as the part is locked" +msgstr "" + #: src/tables/bom/UsedInTable.tsx:74 msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5167,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:270 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5189,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:329 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5202,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5302,10 +5616,6 @@ msgstr "" msgid "Deallocate stock from build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:205 -msgid "Complete" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:206 msgid "Complete build output" msgstr "" @@ -5322,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5469,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5551,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5634,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 -#: src/tables/part/PartParameterTable.tsx:88 +#: src/tables/part/ParametricPartTable.tsx:77 +#: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 -#: src/tables/part/PartParameterTable.tsx:121 -#: src/tables/part/PartParameterTable.tsx:144 +#: src/tables/part/ParametricPartTable.tsx:139 +#: src/tables/part/PartParameterTable.tsx:128 +#: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5667,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5704,21 +6028,25 @@ msgstr "" #~ msgid "[{0}]" #~ msgstr "[{0}]" -#: src/tables/part/PartParameterTable.tsx:105 +#: src/tables/part/PartParameterTable.tsx:112 msgid "New Part Parameter" msgstr "" -#: src/tables/part/PartParameterTable.tsx:130 -#: src/tables/part/PartParameterTable.tsx:152 +#: src/tables/part/PartParameterTable.tsx:137 +#: src/tables/part/PartParameterTable.tsx:159 msgid "Delete Part Parameter" msgstr "" -#: src/tables/part/PartParameterTable.tsx:170 +#: src/tables/part/PartParameterTable.tsx:177 msgid "Add parameter" msgstr "" -#: src/tables/part/PartParameterTable.tsx:191 -#: src/tables/stock/StockItemTable.tsx:300 +#: src/tables/part/PartParameterTable.tsx:196 +msgid "Part parameters cannot be edited, as the part is locked" +msgstr "" + +#: src/tables/part/PartParameterTable.tsx:210 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5739,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5763,116 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:67 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:89 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:98 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:169 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:174 -#: src/tables/stock/StockItemTable.tsx:265 -msgid "Assembly" +#: src/tables/part/PartTable.tsx:185 +msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:175 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:235 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:239 -msgid "Not Virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:244 -msgid "Is Template" -msgstr "" - -#: src/tables/part/PartTable.tsx:245 -msgid "Filter by parts which are templates" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 +msgid "Is Template" +msgstr "" + +#: src/tables/part/PartTable.tsx:261 +msgid "Filter by parts which are templates" +msgstr "" + +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:257 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6211,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:305 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6264,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6465,27 +6815,62 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" +#: src/tables/settings/ImportSessionTable.tsx:39 +msgid "Delete Import Session" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:45 +#: src/tables/settings/ImportSessionTable.tsx:132 +msgid "Create Import Session" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:70 +msgid "Uploaded" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:80 +msgid "Imported Rows" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:110 +#: src/tables/settings/TemplateTable.tsx:276 +msgid "Model Type" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:111 +#: src/tables/settings/TemplateTable.tsx:277 +msgid "Filter by target model type" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:117 +msgid "Filter by import session status" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:123 +msgid "Filter by user" +msgstr "" + #: src/tables/settings/PendingTasksTable.tsx:36 msgid "Arguments" msgstr "" @@ -6502,7 +6887,7 @@ msgstr "" msgid "Delete Project Code" msgstr "" -#: src/tables/settings/ProjectCodeTable.tsx:94 +#: src/tables/settings/ProjectCodeTable.tsx:92 msgid "Add project code" msgstr "" @@ -6571,14 +6956,6 @@ msgstr "" msgid "Filter by enabled status" msgstr "" -#: src/tables/settings/TemplateTable.tsx:276 -msgid "Model Type" -msgstr "" - -#: src/tables/settings/TemplateTable.tsx:277 -msgid "Filter by target model type" -msgstr "" - #: src/tables/settings/UserTable.tsx:79 msgid "User with id {id} not found" msgstr "" @@ -6661,189 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:255 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 +msgid "Stock Value" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:260 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:266 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:271 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:280 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:281 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:285 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:286 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:291 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:296 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:301 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:306 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:310 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:311 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:315 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:316 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:324 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:330 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:334 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:335 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:343 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:344 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:425 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:454 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:456 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:463 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:465 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:472 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:474 -#: src/tables/stock/StockItemTable.tsx:480 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:489 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" diff --git a/src/frontend/src/locales/it/messages.po b/src/frontend/src/locales/it/messages.po index 11ebd1f65f..ec83a7d679 100644 --- a/src/frontend/src/locales/it/messages.po +++ b/src/frontend/src/locales/it/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: it\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Italian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -20,90 +20,98 @@ msgstr "" #: src/components/Boundary.tsx:12 msgid "Error rendering component" -msgstr "" +msgstr "Errore nel renderizzare il componente" #: src/components/Boundary.tsx:14 msgid "An error occurred while rendering this component. Refer to the console for more information." -msgstr "" +msgstr "Si è verificato un errore durante il rendering di questo componente. Fare riferimento alla console per maggiori informazioni." #: src/components/DashboardItemProxy.tsx:34 msgid "Title" -msgstr "" +msgstr "Titolo" #: src/components/buttons/AdminButton.tsx:83 msgid "Open in admin interface" -msgstr "" +msgstr "Apri nell'interfaccia di amministrazione" #: src/components/buttons/CopyButton.tsx:18 msgid "Copy to clipboard" -msgstr "" +msgstr "Copia negli appunti" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" -msgstr "" +msgstr "Stampa Etichetta" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "Stampa" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" -msgstr "" +msgstr "Stampa dell'etichetta completata con successo" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" -msgstr "" +msgstr "Errore" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" -msgstr "" +msgstr "Impossibile generare l'etichetta" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" -msgstr "" +msgstr "Stampa report" + +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "Genera" #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" -msgstr "" +msgstr "Stampa del report completata con successo" #: src/components/buttons/PrintingActions.tsx:145 msgid "The report could not be generated" -msgstr "" +msgstr "Non è stato possibile generare il report" #: src/components/buttons/PrintingActions.tsx:173 msgid "Printing Actions" -msgstr "" +msgstr "Azioni di stampa" #: src/components/buttons/PrintingActions.tsx:178 msgid "Print Labels" -msgstr "" +msgstr "Stampa Etichette" #: src/components/buttons/PrintingActions.tsx:184 msgid "Print Reports" -msgstr "" +msgstr "Stampa report" #: src/components/buttons/ScanButton.tsx:15 msgid "Scan QR code" -msgstr "" +msgstr "Scansiona il codice QR" #: src/components/buttons/ScanButton.tsx:20 msgid "Open QR code scanner" -msgstr "" +msgstr "Apri scanner di codice QR" #: src/components/buttons/SpotlightButton.tsx:14 msgid "Open spotlight" -msgstr "" +msgstr "Accendi torcia" #: src/components/buttons/YesNoButton.tsx:16 msgid "Pass" @@ -111,179 +119,146 @@ msgstr "" #: src/components/buttons/YesNoButton.tsx:17 msgid "Fail" -msgstr "" +msgstr "Errore" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" -msgstr "" +msgstr "Si" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" -msgstr "" +msgstr "No" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" -msgstr "" +msgstr "Nessun nome definito" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" -msgstr "" +msgstr "Copiato" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" -msgstr "" +msgstr "Copia" #: src/components/details/DetailsImage.tsx:65 msgid "Remove Image" -msgstr "" +msgstr "Rimuovi l'immagine" #: src/components/details/DetailsImage.tsx:68 msgid "Remove the associated image from this item?" -msgstr "" +msgstr "Rimuovi l'immagine associata all'articolo?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" -msgstr "" +msgstr "Rimuovi" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" -msgstr "" +msgstr "Annulla" #: src/components/details/DetailsImage.tsx:97 msgid "Drag and drop to upload" -msgstr "" +msgstr "Trascina e rilascia per caricare" #: src/components/details/DetailsImage.tsx:100 msgid "Click to select file(s)" -msgstr "" +msgstr "Fare clic per selezionare i file(s)" #: src/components/details/DetailsImage.tsx:224 msgid "Clear" -msgstr "" +msgstr "Elimina" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" -msgstr "" +msgstr "Invia" #: src/components/details/DetailsImage.tsx:267 msgid "Select from existing images" -msgstr "" +msgstr "Seleziona da immagini esistenti" #: src/components/details/DetailsImage.tsx:275 msgid "Select Image" -msgstr "" +msgstr "Seleziona un'immagine" #: src/components/details/DetailsImage.tsx:287 msgid "Upload new image" -msgstr "" +msgstr "Carica nuova immagine" #: src/components/details/DetailsImage.tsx:294 msgid "Upload Image" -msgstr "" +msgstr "Carica immagine" #: src/components/details/DetailsImage.tsx:307 msgid "Delete image" -msgstr "" - -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" +msgstr "Elimina immagine" #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "L'articolo può essere acquistato da fornitori esterni" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "L'articolo può essere venduto ai clienti" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "L'Articolo è virtuale (non è un articolo fisico)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtuale" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" -msgstr "" +msgstr "Il caricamento della foto è fallito" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" -msgstr "" +msgstr "Operazione completata" #: src/components/editors/NotesEditor.tsx:157 msgid "Notes saved successfully" -msgstr "" +msgstr "Note salvate con successo" #: src/components/editors/NotesEditor.tsx:166 msgid "Failed to save notes" -msgstr "" +msgstr "Salvataggio delle note non riuscito" #: src/components/editors/NotesEditor.tsx:198 msgid "Preview Notes" -msgstr "" +msgstr "Anteprima Note" #: src/components/editors/NotesEditor.tsx:198 msgid "Edit Notes" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtuale" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/ja/messages.po b/src/frontend/src/locales/ja/messages.po index 9b59f1ed5b..5cd1c3cf12 100644 --- a/src/frontend/src/locales/ja/messages.po +++ b/src/frontend/src/locales/ja/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ja\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "エラー" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "キャンセル" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "仮想部品" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "読み込み中" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "サムネイル" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "編集" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "既読にする" @@ -1262,50 +1280,52 @@ msgstr "既読にする" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "パーツ" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "パーツ" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "在庫商品" @@ -1394,7 +1415,7 @@ msgstr "在庫場所" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "在庫場所" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "ユーザー" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "在庫" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "この商品の初期数量を入力" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "未読にする" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "説明" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "添付ファイル" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "メモ" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "在庫商品を編集" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "フィルタを追加" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "表フィルタ" @@ -5117,128 +5219,81 @@ msgstr "表フィルタ" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "サブカテゴリを含む" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "有効なパーツでフィルタ" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "サブカテゴリのパーツを含む" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "コンポーネント属性でフィルタ" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "追跡可能属性でフィルタ" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "単位のある部品でフィルタ" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "在庫がある部品でフィルタ" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "購入可能な部品でフィルタ" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "販売可能な部品でフィルタ" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "仮想部品" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "仮想部品でフィルタ" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "仮想部品ではない" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/ko/messages.po b/src/frontend/src/locales/ko/messages.po index cb522727c7..19dc6ee1a4 100644 --- a/src/frontend/src/locales/ko/messages.po +++ b/src/frontend/src/locales/ko/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ko\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Korean\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/lv/messages.po b/src/frontend/src/locales/lv/messages.po index 42fc516a58..c322ace7da 100644 --- a/src/frontend/src/locales/lv/messages.po +++ b/src/frontend/src/locales/lv/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: lv\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Latvian\n" "Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/nl/messages.po b/src/frontend/src/locales/nl/messages.po index 6f778af583..caaf83dc40 100644 --- a/src/frontend/src/locales/nl/messages.po +++ b/src/frontend/src/locales/nl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: nl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "Kopiëren naar klembord" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "Geslaagd" msgid "Fail" msgstr "Niet geslaagd" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Ja" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Nee" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "Geen naam gedefinieerd" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Gekopieerd" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Kopieer" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "De bijbehorende afbeelding van dit item verwijderen?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Verwijderen" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Annuleer" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Wis" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Afbeelding Uploaden" msgid "Delete image" msgstr "Afbeelding verwijderen" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Onderdeel is niet actief" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inactief" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Onderdeel is een sjabloondeel (varianten kunnen van dit deel gemaakt worden)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Onderdeel kan vanuit andere onderdelen worden samengesteld" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Onderdeel kan gebruikt worden in samenstellingen" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Voorraad onderdeel wordt bijgehouden op serienummer" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Onderdeel kan worden gekocht bij externe leveranciers" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Onderdeel kan aan klanten worden verkocht" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Onderdeel is virtueel (geen fysiek onderdeel)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtueel" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Verkooporder" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Verkooporders" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Verzending verkooporder" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Verzendingen verkooporders" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Retourorder" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Retourorders" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inactief" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Verkoop" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Status" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Productieorders" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Status" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "Regelitems" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "Bijlagen" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "Opmerkingen" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,27 +4788,23 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "Regelitems" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "Voltooide Verzendingen" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" +msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 #: src/pages/sales/ReturnOrderDetail.tsx:126 @@ -4712,33 +4812,21 @@ msgstr "Voltooide Verzendingen" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "Order Details" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "Klantreferentie" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "Voltooide Verzendingen" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "Retourorder toevoegen" msgid "Customers" msgstr "Klanten" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "Voeg Verkooporder toe" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "In afwachting van verzending" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Onderdeel is niet actief" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "Verkoopordertoewijzingen" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtueel" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "Voorraadartikel is toegewezen aan een verkooporder" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/no/messages.po b/src/frontend/src/locales/no/messages.po index c17313efda..86ce5795ba 100644 --- a/src/frontend/src/locales/no/messages.po +++ b/src/frontend/src/locales/no/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: no\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "Kopier til utklippstavle" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Feil" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Ja" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Nei" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Fjern" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Avbryt" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtuell" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Suksess" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Skjemafeil" @@ -431,18 +405,17 @@ msgstr "Skjemafeil" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Oppdater" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Innloggingen mislyktes" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Kontroller inndataene og prøv igjen." @@ -487,7 +460,7 @@ msgstr "Kontroller inndataene og prøv igjen." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Levering av e-post vellykket" @@ -615,7 +588,7 @@ msgstr "Vert" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Status: <0>arbeider ({0}), <1>utvidelser{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Søk" @@ -683,11 +656,11 @@ msgstr "Laster" msgid "No results found" msgstr "Ingen resultater funnet" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "Miniatyrbilde" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Strekkodehandlinger" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Visning" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Vis strekkode" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Koble mot strekkode" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Koble til egendefinert strekkode" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Fjern strekkodekobling" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Koble fra egendefinert strekkode" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Rediger" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Slett element" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Dupliser" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Dupliser element" @@ -1172,13 +1190,13 @@ msgstr "Kontoinnstillinger" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Systeminnstillinger" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Adminsenter" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Sider" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Utvidelser" @@ -1235,25 +1253,25 @@ msgstr "Dokumentasjon" msgid "About" msgstr "Om" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Varlser" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Du har ingen uleste varsler." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Varsel" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Merk som lest" @@ -1262,50 +1280,52 @@ msgstr "Merk som lest" msgid "results" msgstr "resultater" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Skriv inn søketekst" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Alternativer for søk" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Regex-søk" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Helordsøk" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Det oppstod en feil under søk" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Ingen resultater" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Ingen resultater tilgjengelig for søk" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Ukjent modell: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Del" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Deler" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Leverandørdel" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Leverandørdeler" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "Produsentdel" @@ -1369,12 +1390,12 @@ msgstr "Delkategori" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Delkategorier" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Lagervare" @@ -1394,7 +1415,7 @@ msgstr "Lagerplassering" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Lagerplasseringer" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Firma" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Firma" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Firma" msgid "Project Code" msgstr "Prosjektkode" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Prosjektkoder" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "Innkjøpsordre" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Innkjøpsordrer" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "Ordrelinje for innkjøpsordre" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "Ordrelinjer for innkjøpsordre" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Salgsordre" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Salgsordrer" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Salgsordreforsendelse" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Salgsordreforsendelser" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Returordre" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Returordrer" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Adresse" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Adresser" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Kontakt" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Kontakter" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Eier" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Eiere" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Bruker" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Brukere" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "Forsendelse" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "Ingen lagerbeholdning" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Lagerbeholdning" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Serienummer" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "Vis bokser" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bulgarsk" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Tsjekkisk" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Dansk" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "Tysk" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Gresk" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "Engelsk" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Spansk" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Spansk (Meksikansk)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Farsi / Persisk" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finsk" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "Fransk" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Hebraisk" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindi" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Ungarsk" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Italiensk" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japansk" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Koreansk" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Nederlandsk" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norsk" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polsk" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Portugisisk" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Portugisisk (Brasil)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Russisk" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Slovensk" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Svensk" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Thailandsk" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Tyrkisk" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Vietnamesisk" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Kinesisk (forenklet)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Kinesisk (tradisjonell)" @@ -2229,7 +2272,7 @@ msgstr "Hjem" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Dashbord" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Nylig oppdatert" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Lav lagerbeholdning" @@ -2368,10 +2411,10 @@ msgstr "Demo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Innkjøp" @@ -2381,7 +2424,7 @@ msgstr "Innkjøp" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Salg" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Overordnet del-kategori" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "Overordnet del-kategori" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Overordnet del-kategori" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Status" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "Mottatt" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Handlinger" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "Legg til gitt mengde som pakker i stedet for enkeltprodukter" @@ -2706,15 +2824,15 @@ msgstr "Legg til gitt mengde som pakker i stedet for enkeltprodukter" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "Angi innledende antall for denne lagervaren" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Serienumre" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Angi serienumre for ny lagerbeholdning (eller la stå tom)" @@ -2722,94 +2840,82 @@ msgstr "Angi serienumre for ny lagerbeholdning (eller la stå tom)" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "På lager" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Handlinger" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Legg til" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "Tell" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "Overfør lager" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "Tell beholdning" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Sjekk innboksen for en nullstillingslenke. Dette fungerer bare hvis du har en konto. Sjekk også i spam." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "Tilbakestilling feilet" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "Ugyldig skjema" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "metodeparameter er ikke angitt" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Laster" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "Bakgrunnsoppgaver" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "Feilrapporter" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Egendefinerte enheter" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Delparametere" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Hurtighandlinger" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Legg til en ny bruker" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "Avanserte Innstillinger" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Etiketter" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Rapportering" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "Lagertelling" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Produksjonsordrer" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Bytt til brukerinnstilling" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Konto" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Sikkerhet" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Visningsvalg" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Kontoinnstillinger" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "Bytt til systeminnstilling" @@ -3689,36 +3794,22 @@ msgstr "Marker som ulest" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Status" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "Beskrivelse" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "Fullførte artikler" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "Ansvarlig" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "Opprettet" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "Måldato" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "Produksjonsdetaljer" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" -msgstr "Tildel lagerbeholdning" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" +msgstr "Produksjonsdetaljer" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "Ordrelinjer" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "Ufullstendige artikler" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "Brukt lagerbeholdning" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "Underordnede Produksjonsordrer" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "Vedlegg" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "Notater" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "Rediger produksjonsordre" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "Legg til produksjonsordre" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "Produksjonsordre-handlinger" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "Leverandør" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "Produsent" @@ -3953,7 +4048,7 @@ msgstr "Produsent" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "Rediger Bedrift" msgid "Company Actions" msgstr "Bedriftshandlinger" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "Produsentens delenummer" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Parametere" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "Leverandører" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "Rediger produsentdel" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "Pakkeantall" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "Mottatt lagerbeholdning" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "Rediger Leverandørdel" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "Legg til leverandørdel" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Kategori" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "IPN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Enheter" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "Nøkkelord" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Lenke" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "I bestilling" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "Kan Produsere" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "Produseres" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Aktiv" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "Sammenstilt del" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "Sporbar del" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "Opprettelsesdato" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "Opprettelsesdato" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Prisområde" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "Varianter" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "Tildelinger" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "Stykkliste (BOM)" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "Brukt i" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "Produsenter" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "Planlegging" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "Testmaler" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "Relaterte Deler" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "Tilgjengelig" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "I bestilling" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "Under produksjon" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "Rediger del" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "Lagerhandlinger" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "Tell delbeholdning" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "Overfør delbeholdning" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "Delhandlinger" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "Total pris" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponent" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "Enhetspris" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,27 +4788,23 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "Ordrelinjer" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "Fullførte forsendelser" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" +msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 #: src/pages/sales/ReturnOrderDetail.tsx:126 @@ -4712,33 +4812,21 @@ msgstr "Fullførte forsendelser" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "Ordredetaljer" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "Ordrehandlinger" @@ -4748,6 +4836,12 @@ msgstr "Ordrehandlinger" msgid "Customer Reference" msgstr "Kundereferanse" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "Fullførte forsendelser" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "Kunder" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "Ventende forsendelser" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "Basisdel" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "Sporing av lager" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "Testdata" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "Installerte artikler" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "Underordnede artikler" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "Rediger lagervare" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "Lagerhandlinger" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "Tell beholdning" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "Legg til lager" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "Fjern lager" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "Overfør" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "Overfør lager" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Legg til filter" msgid "Clear Filters" msgstr "Fjern filtre" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Forbudt" msgid "Not found" msgstr "Ikke funnet" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "Slett valgte oppføringer" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "Er du sikker på at du vil slette valgte oppføringer?" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "Denne handlingen kan ikke angres!" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "Slettede oppføringer" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "Oppføringer slettet" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "Kunne ikke slette oppføringer" @@ -5100,16 +5202,16 @@ msgstr "Kunne ikke slette oppføringer" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Strekkodehandlinger" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Oppdater data" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Tabellfiltre" @@ -5117,130 +5219,83 @@ msgstr "Tabellfiltre" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "Denne BOM-artikkelen er definert for en annen overordnet del" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "Delinformasjon" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "Ingen lagerbeholdning" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "Inkluderer erstatningsbeholdning" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "Inkluderer variantbeholdning" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "Lagerinformasjon" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "Forbruksvare" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "Vis sporbare deler" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "Vis sammenstilte elementer" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "Vis elementer med tilgjengelig lagerbeholdning" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "Vis elementer i bestilling" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "Vis godkjente elementer" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "Vis arvede elementer" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "Valgfritt" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "Vis valgfrie elementer" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" -msgstr "Forbruksvare" +msgid "Show trackable items" +msgstr "Vis sporbare deler" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "Vis forbruksartikler" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" -msgstr "Har prising" +msgid "Show asssmbled items" +msgstr "Vis sammenstilte elementer" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" -msgstr "Vis varer med priser" +msgid "Show items with available stock" +msgstr "Vis elementer med tilgjengelig lagerbeholdning" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" +msgstr "Vis elementer i bestilling" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" msgstr "" +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" +msgstr "Vis godkjente elementer" + #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" msgstr "" +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" +msgstr "Vis arvede elementer" + #: src/tables/bom/BomTable.tsx:331 #~ msgid "Edit Bom Item" #~ msgstr "Edit Bom Item" @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" msgstr "" +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "Valgfritt" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "Vis valgfrie elementer" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "Forbruksvare" + #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" -msgstr "" +msgid "Show consumable items" +msgstr "Vis forbruksartikler" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "Har prising" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "Vis varer med priser" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "Vis BOM" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "Rediger erstatninger" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "Vis aktive sammenstillinger" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Sporbar" @@ -5324,8 +5444,37 @@ msgstr "Sporbar" msgid "Show trackable assemblies" msgstr "Vis sporbare sammenstillinger" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "Tildelt" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "Spores" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "Ingen lagerbeholdning tilgjengelig" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "Tildel lagerbeholdning" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "Ingen vedlegg funnet" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "Alder" msgid "Message" msgstr "Melding" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "Rediger del-parameter" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Sammenstilling" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Inkluder underkategorier" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "Vis strukturelle kategorier" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "Inkluder varianter" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "Vis maler med valg" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Har enheter" @@ -5920,120 +6091,137 @@ msgstr "Slett parametermal" msgid "Add parameter template" msgstr "Legg til parametermal" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "Minimumsbeholdning" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "Produksjonsordre-tildelinger" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "Salgsordretildelinger" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtrer etter del aktiv-status" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Sammenstilling" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtrer etter sammenstillingsattributt" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Inkluder deler i underkategorier" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtrer etter komponentattributt" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Filtrer etter sporbar attributt" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Filtrer etter deler som har enheter" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "Har IPN" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Filtrer etter deler som har internt delnummer" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "Har beholdning" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Filtrer etter deler som har lagerbeholdning" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Filtrer etter deler som har lav lagerbeholdning" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Kjøpbar" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Filtrer etter deler som kan kjøpes" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Salgbar" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Filtrer etter deler som kan selges" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtuell" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Filtrer etter deler som er virtuelle" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Ikke virtuell" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "Eksempel" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "Installert" @@ -6425,55 +6613,56 @@ msgstr "Slett produsentdel" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "Delbeskrivelse" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "Totalt Antall" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "Mottatt" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "Leverandørkode" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "Leverandørlenke" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "Produsentens kode" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "Destinasjon" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "Legg til ordrelinje" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "Rediger ordrelinje" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "Motta ordrelinje" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "Legg til ordrelinje" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "Motta artikler" @@ -6626,24 +6815,24 @@ msgstr "Det oppstod en feil under henting av gruppedetaljer" msgid "Permission set" msgstr "Tillatelse satt" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "Slett gruppe" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "Gruppe slettet" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "Er du sikker på at du vil slette denne gruppen?" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "Legg til gruppe" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "Rediger gruppe" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "Denne lagervaren er i produksjon" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "Denne lagervaren har blitt tildelt en salgsordre" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "Denne lagervaren har blitt tilordnet en kunde" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "Denne lagervaren er montert i en annen lagervare" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "Denne lagervaren har blitt konsumert av en produksjonsordre" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "Denne lagervaren har utløpt" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "Denne lagervaren er gammel" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "Denne lagervaren er i sin helhet tilordnet" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "Denne lagervaren er delvis tilordnet" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "Denne lagervaren er oppbrukt" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "Vis lagerbeholdning for aktive deler" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "Filtrer etter lagerstatus" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "Vis lagerbeholdning for sammensatte deler" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "Vis elementer som har blitt tildelt" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "Vis elementer som er tilgjengelige" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "Inkluder underplasseringer" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "Inkluder lager i underplasseringer" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "Oppbrukt" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "Vis oppbrukte lagervarer" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "Vis elementer som er på lager" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "Vis elementer som er under produksjon" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "Inkluder lagervarer for variantdeler" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "Vis lagervarer som er installert i andre elementer" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "Sendt til kunde" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "Vis elementer som er sendt til en kunde" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "Er serialisert" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "Vis elementer som har et serienummer" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "Har batchkode" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "Vis elementer som har en batchkode" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "Vis sporede deler" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "Har innkjøpspris" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "Vis elementer som har innkjøpspris" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "Ekstern plassering" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "Vis elementer ved en ekstern plassering" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Les dokumentasjonen" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/pl/messages.po b/src/frontend/src/locales/pl/messages.po index 61608994eb..bb45fc381e 100644 --- a/src/frontend/src/locales/pl/messages.po +++ b/src/frontend/src/locales/pl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:57\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Polish\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" @@ -38,41 +38,49 @@ msgstr "Otwórz w interfejsie administratora" msgid "Copy to clipboard" msgstr "Skopiuj do schowka" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Drukuj etykietę" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Drukowanie etykiety zakończone powodzeniem" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Błąd" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "Etykieta nie może zostać wygenerowana" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Drukuj raport" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Drukowanie raportu zakończone pomyślnie" @@ -113,25 +121,25 @@ msgstr "Zaliczone" msgid "Fail" msgstr "Niezaliczone" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Tak" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Nie" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "Nie zdefiniowano nazwy" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Skopiowano" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Kopiuj" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Usunąć powiązany obrazek z tego elementu?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Usuń" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Anuluj" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Wyczyść" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Prześlij obrazek" msgid "Delete image" msgstr "Usuń obraz" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Część nie jest aktywna" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Nieaktywny" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Część może być zmontowana z innych części" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Zapasy części są śledzone przez numer seryjny" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Część może być zakupiona od zewnętrznych dostawców" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Część może zostać sprzedana klientom" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Część jest wirtualna (nie fizyczna)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Wirtualny" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "Przesłanie obrazu nie powiodło się" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Sukces" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Błąd formularza" @@ -431,18 +405,17 @@ msgstr "Błąd formularza" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Aktualizuj" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Logowanie nie powiodło się" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Wiadomość dostarczona" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "Ustawienia konta" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Ustawienia systemowe" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Centrum Admina" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Strony" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Wtyczki" @@ -1235,25 +1253,25 @@ msgstr "Dokumentacja" msgid "About" msgstr "O nas" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Powiadomienia" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Powiadomienie" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Oznacz jako przeczytane" @@ -1262,50 +1280,52 @@ msgstr "Oznacz jako przeczytane" msgid "results" msgstr "wyniki" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Wpisz frazę, którą chcesz wyszukać" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Opcje wyszukiwania" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Wyszukiwanie Regex" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Wyszukiwanie całych słów" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Wystąpił błąd podczas wyszukiwania" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Brak wyników" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Brak dostępnych wyników wyszukiwania" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Nieznany model: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Komponent" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Komponenty" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Kontakty" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Właściciel" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Właściciele" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Użytkownik" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Użytkownicy" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "Szablon etykiety" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "Szablony etykiet" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "Szablon Raportu" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "Szablony raportów" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "Konfiguracja wtyczki" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "Konfiguracje wtyczki" @@ -1597,32 +1626,48 @@ msgstr "Konfiguracje wtyczki" msgid "Shipment" msgstr "Wysyłka" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Nieaktywny" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Stan" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Numer seryjny" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bułgarski" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Czeski" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Duński" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "Niemiecki" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Grecki" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "Angielski" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Hiszpański" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Hiszpański (Meksykański)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Farsi / Perski" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Fiński" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "Francuski" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Hebrajski" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hinduski" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Węgierski" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Włoski" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japoński" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Koreański" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "Łotewski" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Holenderski" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norweski" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polski" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Portugalski" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Portugalski (Brazylijski)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "Rumuński" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Rosyjski" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "Słowacki" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Słoweński" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Szwedzki" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Tajski" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Turecki" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "Ukraiński" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Wietnamski" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Chiński (uproszczony)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Chiński (tradycyjny)" @@ -2229,7 +2272,7 @@ msgstr "Strona główna" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Kokpit" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Mała ilość w magazynie" @@ -2368,10 +2411,10 @@ msgstr "Demo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Zakupy" @@ -2381,7 +2424,7 @@ msgstr "Zakupy" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "Lokalizacja" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Akcje" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "Ładowanie..." -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "Przenieś" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Akcje" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Dodaj" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "Wylogowano" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "Zalogowano" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "Zadania w tle" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "Raporty o błędach" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "Waluty" @@ -3438,37 +3544,37 @@ msgstr "Waluty" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Jednostki niestandardowe" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Parametry części" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "Parametry kategorii" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "Typy lokalizacji" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "Maszyny" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Szybkie akcje" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Dodaj nowego użytkownika" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "Opcje zaawansowane" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Etykiety" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Raportowanie" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Zlecenia wykonania" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Przełącz na ustawienie użytkownika" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Konto" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Bezpieczeństwo" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Wyświetl opcje" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Ustawienia konta" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "Przełącz na ustawienia systemowe" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Część nie jest aktywna" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Wirtualny" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/pseudo-LOCALE/messages.po b/src/frontend/src/locales/pseudo-LOCALE/messages.po index d3fda252d0..8df360f0dd 100644 --- a/src/frontend/src/locales/pseudo-LOCALE/messages.po +++ b/src/frontend/src/locales/pseudo-LOCALE/messages.po @@ -73,41 +73,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -148,25 +156,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -179,22 +187,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -212,7 +219,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -238,73 +245,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -457,8 +432,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -466,18 +440,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -650,7 +623,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -702,7 +675,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -718,11 +691,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -735,114 +708,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:155 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:156 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:173 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:194 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:222 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:252 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:270 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:311 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:344 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:345 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:350 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:351 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:368 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:383 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -853,51 +871,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1211,13 +1229,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1260,7 +1278,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1274,25 +1292,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1301,50 +1319,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1358,7 +1378,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1381,7 +1401,8 @@ msgstr "" #: src/components/render/ModelType.tsx:45 #: src/pages/company/SupplierPartDetail.tsx:192 #: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1408,12 +1429,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1433,7 +1454,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1472,15 +1493,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1489,146 +1518,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:348 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 #: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1636,32 +1665,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:307 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:127 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1725,12 +1770,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "" @@ -2043,10 +2082,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "" @@ -2123,138 +2158,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2268,7 +2311,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2335,7 +2378,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2410,7 +2453,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:236 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:351 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2420,7 +2463,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2644,10 +2687,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "" @@ -2656,80 +2695,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:145 +#: src/pages/company/SupplierPartDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:99 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:117 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:134 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2737,7 +2855,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2745,15 +2863,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2761,94 +2879,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2918,12 +3024,12 @@ msgstr "" #~ msgstr "" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3457,19 +3563,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3477,37 +3583,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3654,45 +3760,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3728,36 +3833,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 #: src/pages/company/ManufacturerPartDetail.tsx:78 #: src/pages/company/SupplierPartDetail.tsx:85 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3774,29 +3865,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3804,34 +3895,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3840,7 +3931,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3849,11 +3940,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "" @@ -3866,62 +3952,69 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 #: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:265 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:276 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3935,14 +4028,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:319 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3992,7 +4085,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -4036,7 +4129,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:71 #: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:77 msgid "Internal Part" msgstr "" @@ -4060,12 +4153,12 @@ msgid "Manufacturer Part Details" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" @@ -4089,25 +4182,9 @@ msgstr "" msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - #: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:112 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:153 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" @@ -4129,7 +4206,7 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:252 msgid "Received Stock" msgstr "" @@ -4226,144 +4303,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4374,130 +4462,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "" @@ -4543,7 +4644,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4552,7 +4653,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4581,8 +4682,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:179 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4651,7 +4752,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4723,26 +4825,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4751,33 +4849,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:309 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4787,6 +4873,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4801,17 +4893,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4876,11 +4968,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4892,15 +4984,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4913,31 +5005,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4945,37 +5037,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -5083,7 +5183,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5109,28 +5209,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5139,16 +5239,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5156,128 +5256,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5288,30 +5341,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "" @@ -5320,32 +5394,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5354,7 +5472,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5363,8 +5481,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5385,7 +5532,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5398,19 +5545,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5514,10 +5669,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5661,81 +5812,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5743,15 +5894,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5826,27 +5977,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5859,7 +6028,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5914,7 +6083,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5935,7 +6104,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5959,120 +6128,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6411,7 +6597,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6464,55 +6650,51 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:91 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:118 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:164 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:171 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:207 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:224 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:243 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:281 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive items" msgstr "" @@ -6665,24 +6847,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6888,193 +7070,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" diff --git a/src/frontend/src/locales/pt-br/messages.po b/src/frontend/src/locales/pt-br/messages.po index a7c3aa6d1b..ad0c78d7f4 100644 --- a/src/frontend/src/locales/pt-br/messages.po +++ b/src/frontend/src/locales/pt-br/messages.po @@ -33,41 +33,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -108,25 +116,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -139,22 +147,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -172,7 +179,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -198,73 +205,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -417,8 +392,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -426,18 +400,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -591,7 +564,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -643,7 +616,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -659,11 +632,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -676,114 +649,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:155 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:156 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:173 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:194 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:222 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:252 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:270 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:311 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:344 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:345 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:350 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:351 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:368 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:383 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -794,51 +812,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1148,13 +1166,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1189,7 +1207,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1203,25 +1221,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1230,50 +1248,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1287,7 +1307,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1310,7 +1330,8 @@ msgstr "" #: src/components/render/ModelType.tsx:45 #: src/pages/company/SupplierPartDetail.tsx:192 #: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1337,12 +1358,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1362,7 +1383,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1401,15 +1422,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1418,146 +1447,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:348 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 #: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1565,32 +1594,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:307 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:127 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1654,12 +1699,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "" @@ -1968,10 +2007,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "" @@ -2048,138 +2083,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2193,7 +2236,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2260,7 +2303,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2327,7 +2370,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:236 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:351 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2337,7 +2380,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2497,10 +2540,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "" @@ -2509,80 +2548,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:145 +#: src/pages/company/SupplierPartDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:99 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:117 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:134 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2590,7 +2708,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2598,15 +2716,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2614,94 +2732,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2767,12 +2873,12 @@ msgstr "" #~ msgstr "" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3178,19 +3284,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3198,37 +3304,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3375,45 +3481,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3445,36 +3550,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 #: src/pages/company/ManufacturerPartDetail.tsx:78 #: src/pages/company/SupplierPartDetail.tsx:85 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3491,29 +3582,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3521,34 +3612,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3557,7 +3648,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3566,11 +3657,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "" @@ -3583,62 +3669,69 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 #: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:265 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:276 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3652,14 +3745,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:319 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3709,7 +3802,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3753,7 +3846,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:71 #: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:77 msgid "Internal Part" msgstr "" @@ -3777,12 +3870,12 @@ msgid "Manufacturer Part Details" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" @@ -3806,25 +3899,9 @@ msgstr "" msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - #: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:112 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:153 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" @@ -3846,7 +3923,7 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:252 msgid "Received Stock" msgstr "" @@ -3943,144 +4020,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4091,130 +4179,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartPricingPanel.tsx:72 msgid "No pricing data found for this part." msgstr "" @@ -4256,7 +4357,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4265,7 +4366,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4294,8 +4395,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:179 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4364,7 +4465,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4436,26 +4538,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4464,33 +4562,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:309 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4500,6 +4586,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4514,17 +4606,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4589,11 +4681,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4605,15 +4697,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4626,31 +4718,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4658,37 +4750,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4796,7 +4896,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -4822,28 +4922,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -4852,16 +4952,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -4869,128 +4969,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5001,30 +5054,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "" @@ -5033,32 +5107,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5067,7 +5185,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5076,8 +5194,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5098,7 +5245,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5111,19 +5258,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5227,10 +5382,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5374,81 +5525,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5456,15 +5607,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5539,27 +5690,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5572,7 +5741,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5627,7 +5796,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5648,7 +5817,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5672,120 +5841,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6124,7 +6310,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6177,55 +6363,51 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:91 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:118 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:164 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:171 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:207 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:224 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:243 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:281 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive items" msgstr "" @@ -6378,24 +6560,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6601,193 +6783,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" diff --git a/src/frontend/src/locales/pt/messages.po b/src/frontend/src/locales/pt/messages.po index 744b12065f..4b42e83e9c 100644 --- a/src/frontend/src/locales/pt/messages.po +++ b/src/frontend/src/locales/pt/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: pt\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "Abrir na página de administrador" msgid "Copy to clipboard" msgstr "Copiar para área de transferência" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Imprimir etiqueta" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Impressão de etiqueta finalizada com sucesso" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Erro" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "A etiqueta não pode ser gerada" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Imprimir Relatório" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Impressão de relatório finalizado com sucesso" @@ -113,25 +121,25 @@ msgstr "Aprovado" msgid "Fail" msgstr "Reprovado" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Sim" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Não" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "Sem nome definido" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Copiada" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Copiar" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Remover imagem associada a este item?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Remover" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Cancelar" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Limpar" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Enviar Imagem" msgid "Delete image" msgstr "Excluir imagem" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Peça inativa" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inativo" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Esta é uma peça modelo (as variantes podem ser feitas a partir desta peça)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Peça pode ser montada a partir de outras peças" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Peça pode ser usada em montagens" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Peça em estoque é controlada por número de série" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Peça pode ser comprada de fornecedores externos" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Peça pode ser vendida a clientes" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Peça é virtual (não é física)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtual" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "Upload da imagem falhou" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Sucesso" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Erro no formulário" @@ -431,18 +405,17 @@ msgstr "Erro no formulário" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Atualizar" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Falha ao acessar" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Verifique sua entrada e tente novamente." @@ -487,7 +460,7 @@ msgstr "Verifique sua entrada e tente novamente." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Envio de e-mail concluído" @@ -615,7 +588,7 @@ msgstr "Servidor" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Estado: <0>funcionário ({0}), <1>extensões{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Buscar" @@ -683,11 +656,11 @@ msgstr "Carregando" msgid "No results found" msgstr "Nenhum resultado encontrado" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "entrada modelRenderer necessária para tabelas" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "Não há itens disponíveis" @@ -700,114 +673,159 @@ msgstr "Não há itens disponíveis" msgid "Thumbnail" msgstr "Miniatura" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Ações de código de barras" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Visualizar" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Ver código de barras" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Vincular Código de Barras" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Vincular código de barras personalizado" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Desvincular Código de Barras" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Desvincular código de barras personalizado" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Editar" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Apagar item" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Duplicar" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Duplicar item" @@ -1172,13 +1190,13 @@ msgstr "Configurações de conta" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Configurações do Sistema" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Centro de Administração" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Páginas" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Extensões" @@ -1235,25 +1253,25 @@ msgstr "Documentação" msgid "About" msgstr "Sobre" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Notificações" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Você não tem notificações não lidas." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Notificação" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Marcar como lido" @@ -1262,50 +1280,52 @@ msgstr "Marcar como lido" msgid "results" msgstr "resultados" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Digite o texto de pesquisa" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Opções de pesquisa" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Busca por Regex" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Pesquisa de palavras inteira" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Ocorreu um erro durante a pesquisa" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Nenhum resultado" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Não há resultados disponíveis para a pesquisa" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Modelo desconhecido: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Peça" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Peças" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "Teste de Modelos de Peças" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Fornecedor da Peça" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Peças do Fornecedor" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "Fabricante da peça" @@ -1369,12 +1390,12 @@ msgstr "Categoria da Peça" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Categorias de Peça" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Item de estoque" @@ -1394,7 +1415,7 @@ msgstr "Localização do estoque" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Locais de estoque" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "Linhas de Produção" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Empresa" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Empresas" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Empresas" msgid "Project Code" msgstr "Código do Projeto" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Códigos de Projeto" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "Pedido de Compra" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Pedidos de compra" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "Linha do Pedido de Compra" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "Linhas do Pedido de Compra" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Pedido de Venda" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Pedidos de vendas" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Envio do Pedido Venda" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Envios do Pedido Venda" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Pedido de Devolução" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Pedidos de Devolução" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Endereço" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Endereços" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Contato" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Contatos" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Proprietário" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Proprietários" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Usuário" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Usuários" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "Modelo de Etiqueta" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "Modelos de Etiqueta" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "Modelo de Relatório" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "Modelos de Relatório" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "Configuração de Plugin" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "Configurações de Plugins" @@ -1597,32 +1626,48 @@ msgstr "Configurações de Plugins" msgid "Shipment" msgstr "Remessa" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inativo" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "Sem Estoque" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Estoque" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "Número de Série" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "Nenhuma configuração especificada" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "Nenhuma configuração especificada" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "Mostrar Caixas" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Búlgaro" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Tcheco" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Dinamarquês" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "Alemão" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Grego" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "Inglês" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Espanhol" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Espanhol (Mexicano)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Persa" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finlandês" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "Francês" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Hebraico" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindi" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Húngaro" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Italiano" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japonês" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Coreano" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "Letão" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Holandês" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norueguês" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polonês" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Português" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Português (Brasileiro)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "Romeno" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Russo" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "Eslovaco" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Esloveno" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Sueco" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Tailandês" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Turco" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "Ucraniano" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Vietnamita" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Chinês (Simplificado)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Chinês (Tradicional)" @@ -2229,7 +2272,7 @@ msgstr "Início" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Painel de Controle" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Atualizados Recentemente" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Estoque Baixo" @@ -2368,10 +2411,10 @@ msgstr "Demonstração" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Comprando" @@ -2381,7 +2424,7 @@ msgstr "Comprando" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Vendas" @@ -2605,10 +2648,6 @@ msgstr "Saídas de produção foram canceladas" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Categoria de peça parental" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "Categoria de peça parental" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Categoria de peça parental" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "Escolher local" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "Destino do item selecionado" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "Localização padrão da categoria de peça selecionada" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "Localização do estoque recebida selecionada" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "Localização padrão selecionada" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "Ler Código de Barras" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "Definir Localização" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "Atribuir Código em Lote{0}" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "Alterar Status" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "Remover item da lista" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "Localização" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "Armazenar no local padrão" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "Armazenar no destino do item de linha" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "Armazenar com estoque já recebido" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "Código de Lote" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "Embalagem" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Estado" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "Anotação" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "Código (SKU)" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "Recebido" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Ações" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "Excluir Itens de Linha" @@ -2698,7 +2816,7 @@ msgstr "Excluir Itens de Linha" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "Adicionar quantidade dada como pacotes e não itens individuais" @@ -2706,15 +2824,15 @@ msgstr "Adicionar quantidade dada como pacotes e não itens individuais" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "Inserir quantidade inicial deste item de estoque" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Números de Série" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Insira o número de série para novo estoque (ou deixe em branco)" @@ -2722,94 +2840,82 @@ msgstr "Insira o número de série para novo estoque (ou deixe em branco)" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "Adicionar Item do Estoque" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "Carregando..." -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "Mover para o local padrão" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "Em Estoque" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "Mover" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Ações" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Adicionar" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "Contar" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "Adicionar Estoque" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "Remover Estoque" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "Transferir Estoque" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "Contar Estoque" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "Mudar estado do estoque" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "Mesclar estoque" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "Excluir Item de Estoque" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "Local de estoque pai" @@ -2833,11 +2939,11 @@ msgstr "Local de estoque pai" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "Desconectado" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "Deslogado com sucesso" @@ -2853,20 +2959,20 @@ msgstr "Deslogado com sucesso" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Verifique sua caixa de entrada para o link de redefinição. Isso só funciona se você tiver uma conta. Cheque no spam também." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "A redefinação falhou" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "Logado" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "Logado com sucesso" @@ -2879,12 +2985,12 @@ msgstr "Logado com sucesso" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "Formulário inválido" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "parâmetro do método não fornecido" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Carregador" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "Tarefas de segundo plano" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "Relatórios de Erro" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "Moedas" @@ -3438,37 +3544,37 @@ msgstr "Moedas" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "Unidades personalizadas" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Parâmetros da Peça" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "Parâmetros de Categoria" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "Tipos de localização" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "Máquinas" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "Ações Rápidas" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Adicionar novo usuário" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "Opções Avançadas" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Etiquetas" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Relatórios" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "Balanço" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Ordens de Produções" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Mudar para Configuração de Usuário" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Conta" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Segurança" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Opções de exibição" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Configurações de Conta" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "Mudar para Configuração do Sistema" @@ -3689,36 +3794,22 @@ msgstr "Marcar como não lido" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Estado" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "Referência" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "Referência" msgid "Description" msgstr "Descrição" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "Produção Pai" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "Quantidade de Produção" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "Saídas Completas" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "Emitido por" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "Emitido por" msgid "Responsible" msgstr "Responsável" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "Criado" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "Data Prevista" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "Concluído" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "Local de Origem" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "Local de Origem" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "Qualquer local" @@ -3801,7 +3892,7 @@ msgstr "Qualquer local" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "Local de Destino" @@ -3810,11 +3901,6 @@ msgstr "Local de Destino" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "Código de Lote" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "Código de Lote" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "Detalhes da Produção" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" -msgstr "Alocar Estoque" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" +msgstr "Detalhes da Produção" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "Itens de linha" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "Saídas Incompletas" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "Estoque Consumido" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "Pedido de Produção Filhos" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "Anexos" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "Anotações" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "Editar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "Cancelar Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "Adicionar Pedido de Produção" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "Ações do Pedido de Produção" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "Cancelar pedido" @@ -3929,9 +4024,9 @@ msgstr "Moeda Padrão" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "Fornecedor" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "Fabricante" @@ -3953,7 +4048,7 @@ msgstr "Fabricante" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "Editar Empresa" msgid "Company Actions" msgstr "Ações da Empresa" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "Peça Interna" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "Link Externo" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "Número de Peça do Fabricante" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "Detalhes do Fabricante" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "Detalhes de peça do Fabricante" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Parâmetros" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "Fornecedores" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "Editar Peça do Fabricante" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "Adicionar Peça do Fabricante" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "Ações de peça do Fabricante" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "Peça do Fabricante" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "Anotação" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "Código (SKU)" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "Embalagem" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "Quantidade de embalagens" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "Disponibilidade do fornecedor" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "Disponibilidade Atualizada" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "Disponibilidade" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "Detalhes de Peça do Fornecedor" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "Estoque Recebido" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "Preço do fornecedor" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "Ações de Peças do Fornecedor" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "Editar Peça do Fornecedor" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "Adicionar Peça do Fornecedor" @@ -4187,144 +4266,155 @@ msgstr "Ações de Categoria" msgid "Category Details" msgstr "Detalhes da categoria" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "Variante de" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "Revisão" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Categoria" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "Local Padrão" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "Localização padrão da categoria" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "IPN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "Revisão" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Unidades" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "Palavras-chave" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Link" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "Estoque Disponível" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "Estoque Mínimo" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "No pedido" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "Alocado para Pedidos de Construção" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "Alocado para Pedidos de Venda" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "Pode Produzir" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "Produzindo" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Ativo" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "Modelo de peça" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "Peça Montada" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "Peça Rastreável" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "Criado em" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "Criado em" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "Fornecedor Padrão" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Faixa de Preço" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "Último Balanço" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "Variantes" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "Alocações" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "Lista de Materiais" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "Usado em" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "Fabricantes" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "Agendamento" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "Testar Modelos" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "Peças Relacionadas" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "Disponível" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "No pedido" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "Em Produção" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "Editar Peça" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "Excluir Peça" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "Excluir esta peça não é reversível" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "Ações de Estoque" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "Contagem do estoque" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "Transferir estoque de peça" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "Ações da Peça" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "Histórico de Vendas" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "Preço Total" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Componente" @@ -4542,8 +4645,8 @@ msgstr "Preço Máximo" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "Preço Unitário" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "Precificação Geral" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "Última Atualização" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "Nenhum dado disponível" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "Sem dados" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "Não há informações de preço disponíveis" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "Carregando dados de preços" @@ -4684,27 +4788,23 @@ msgstr "Adicionar Ordem de Compra" msgid "Supplier Reference" msgstr "Referencia do fornecedor" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "Itens de linha" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "Itens de Linha Concluídos" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "Moeda do pedido" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" -msgstr "Envios Concluídos" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" +msgstr "Custo Total" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 #: src/pages/sales/ReturnOrderDetail.tsx:126 @@ -4712,33 +4812,21 @@ msgstr "Envios Concluídos" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "Moeda do pedido" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "Custo Total" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "Criado em" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "Detalhes do pedido" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "Ações de Pedido" @@ -4748,6 +4836,12 @@ msgstr "Ações de Pedido" msgid "Customer Reference" msgstr "Referência do Cliente" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "Envios Concluídos" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "Editar Pedido de Devolução" @@ -4762,17 +4856,17 @@ msgstr "Adicionar Pedido de Devolução" msgid "Customers" msgstr "Clientes" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "Editar Pedido de Venda" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "Adicionar Pedido de Vendas" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "Envios Pendentes" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "Peça base" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "Rastreamento de Estoque" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "Dados de Teste" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "Itens Instalados" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "Itens Filhos" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "Editar Item do Estoque" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "Operações de Estoque" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "Contagem de estoque" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "Adicionar estoque" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "Remover estoque" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "Transferir" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "Transferir estoque" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Peça inativa" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Adicionar Filtro" msgid "Clear Filters" msgstr "Limpar Filtros" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Proibido" msgid "Not found" msgstr "Não encontrado" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "Remover registros selecionados" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "Tem certeza que deseja apagar os registros selecionados?" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "Essa ação não pode ser desfeita!" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "Registos removidos" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "Registros foram removidos com sucesso" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "Falha ao remover registros" @@ -5100,16 +5202,16 @@ msgstr "Falha ao remover registros" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Ações de código de barras" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Atualizar dados" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Filtros da Tabela" @@ -5117,130 +5219,83 @@ msgstr "Filtros da Tabela" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "Este item da BOM é definido para um pai diferente" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "Informação da Peça" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "Sem Estoque" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "Incluir estoque de substitutos" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "Incluir estoque de variantes" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "Informação do Estoque" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "Item Consumível" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "Mostrar itens rastreáveis" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "Exibir itens montados" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "Mostrar itens com estoque disponível" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "Mostrar itens no pedido" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "Mostrar itens validados" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "Mostrar itens herdados" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "Opcional" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "Mostrar itens opcionais" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" -msgstr "Consumível" +msgid "Show trackable items" +msgstr "Mostrar itens rastreáveis" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "Mostrar itens consumíveis" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" -msgstr "Tem Preço" +msgid "Show asssmbled items" +msgstr "Exibir itens montados" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" -msgstr "Exibir itens com preço" +msgid "Show items with available stock" +msgstr "Mostrar itens com estoque disponível" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" +msgstr "Mostrar itens no pedido" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" msgstr "" +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" +msgstr "Mostrar itens validados" + #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" msgstr "" +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" +msgstr "Mostrar itens herdados" + #: src/tables/bom/BomTable.tsx:331 #~ msgid "Edit Bom Item" #~ msgstr "Edit Bom Item" @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" msgstr "" +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "Opcional" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "Mostrar itens opcionais" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "Consumível" + #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" -msgstr "" +msgid "Show consumable items" +msgstr "Mostrar itens consumíveis" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "Tem Preço" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "Exibir itens com preço" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "Ver BOM" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "Editar substitutos" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "Mostrar montagens ativas" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Rastreável" @@ -5324,8 +5444,37 @@ msgstr "Rastreável" msgid "Show trackable assemblies" msgstr "Mostrar montagens rastreáveis" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "Alocado" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "Mostrar linhas opcionais" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "Monitorado" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "Em produção" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "Nenhum estoque disponível" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "Quantidade Unitária" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "Alocar Estoque" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "Pedir estoque" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "Estoque de Produção" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "Nenhum anexo encontrado" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "Idade" msgid "Message" msgstr "Mensagem" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "Editar Parâmetro da Peça" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Montagem" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Incluir Subcategorias" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "Mostrar categorias estruturais" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "Incluir Variantes" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "Mostrar modelos com escolhas" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Possui unidades" @@ -5920,120 +6091,137 @@ msgstr "Excluir Modelo de Parâmetro" msgid "Add parameter template" msgstr "Adicionar modelo de parâmetro" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "Estoque mínimo" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "Alocações de Pedido de Produção" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "Alocações do Pedido de Vendas" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtrar por peça em estado ativo" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Montagem" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtrar por atributo de montagem" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Incluir peças em subcategorias" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtrar por atributo do componente" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Filtrar por atributo rastreável" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Filtrar por peças que têm unidades" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "Tem IPN" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Filtrar por partes que tenham um número de peça interna" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "Tem estoque" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Filtrar por peças que têm estoque" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Filtrar por peças que tenham estoque baixo" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Comprável" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Filtrar por peças que são compráveis" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Vendível" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Filtrar por peças que são vendíveis" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtual" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Filtrar por peças que são virtuais" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Não é Virtual" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "Amostra" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "Instalado" @@ -6425,55 +6613,56 @@ msgstr "Excluir Peça do Fabricante" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "Descrição da Peça" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "Quantidade Total" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "Recebido" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "Código do Fornecedor" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "Link do Fornecedor" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "Código do Fabricante" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "Destino" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "Adicionar Item de Linha" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "Editar Item de Linha" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "Excluir Item de Linha" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "Receber item de linha" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "Adicionar item de linha" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "Receber itens" @@ -6626,24 +6815,24 @@ msgstr "Ocorreu um erro ao obter os detalhes do grupo" msgid "Permission set" msgstr "Permissão definida" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "Apagar grupo" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "Grupo excluído" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "Você tem certeza de que deseja excluir este grupo?" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "Adicionar grupo" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "Editar grupo" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "Este item de estoque está em produção" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "Este item em estoque foi reservado para um pedido" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "Este item em estoque foi reservado para um cliente" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "Este item em estoque foi instalado em outro item de estoque" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "Este item de estoque foi consumido por um pedido de produção" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "Este item de estoque expirou" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "Este item de estoque está velho" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "Este item de estoque está totalmente alocado" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "Este item de estoque está parcialmente alocado" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "Este item de estoque foi esgotado" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "Mostrar estoque de peças ativas" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "Filtrar por estado do estoque" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "Mostrar estoque para peças montadas" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "Mostrar itens que foram alocados" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "Mostrar itens que estão disponíveis" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "Incluir Sublocais" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "Incluir estoque em sublocais" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "Esgotado" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "Mostrar itens de estoque esgotados" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "Mostrar itens que estão em estoque" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "Mostrar itens que estão em produção" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "Incluir itens de estoque para peças variantes" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "Mostrar itens de estoque que estão instalados em outros itens" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "Enviar para Cliente" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "Mostrar itens enviados para um cliente" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "É Serializado" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "Mostrar itens com um número de série" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "Possuí Código de Lote" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "Mostrar itens com um código de lote" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "Mostrar itens monitorados" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "Tem Preço de Compra" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "Mostrar itens com preço de compra" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "Localização Externa" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "Mostrar itens com localização externa" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Leia a documentação" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/ro/messages.po b/src/frontend/src/locales/ro/messages.po index 22bf5d9f94..052364c771 100644 --- a/src/frontend/src/locales/ro/messages.po +++ b/src/frontend/src/locales/ro/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ro\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Romanian\n" "Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100>0 && n%100<20)) ? 1 : 2);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/ru/messages.po b/src/frontend/src/locales/ru/messages.po index 8c24f384e3..f4a15091b1 100644 --- a/src/frontend/src/locales/ru/messages.po +++ b/src/frontend/src/locales/ru/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: ru\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Russian\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" @@ -20,11 +20,11 @@ msgstr "" #: src/components/Boundary.tsx:12 msgid "Error rendering component" -msgstr "" +msgstr "Ошибка при отображении компонента" #: src/components/Boundary.tsx:14 msgid "An error occurred while rendering this component. Refer to the console for more information." -msgstr "" +msgstr "Произошла ошибка при отрисовки этого компонента. Обратитесь к консоли для получения дополнительной информации." #: src/components/DashboardItemProxy.tsx:34 msgid "Title" @@ -32,54 +32,62 @@ msgstr "Заголовок" #: src/components/buttons/AdminButton.tsx:83 msgid "Open in admin interface" -msgstr "" +msgstr "Открыть в панели администратора" #: src/components/buttons/CopyButton.tsx:18 msgid "Copy to clipboard" -msgstr "" +msgstr "Копировать в буфер обмена" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" -msgstr "" +msgstr "Печать этикеток" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "Печать" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" -msgstr "" +msgstr "Печать этикеток успешно завершена" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Ошибка" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" -msgstr "" +msgstr "Ошибка при создании этикетки" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" -msgstr "" +msgstr "Печать отчета" + +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "Создать" #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" -msgstr "" +msgstr "Печать отчета успешно завершена" #: src/components/buttons/PrintingActions.tsx:145 msgid "The report could not be generated" -msgstr "" +msgstr "Ошибка при создании отчета" #: src/components/buttons/PrintingActions.tsx:173 msgid "Printing Actions" @@ -87,11 +95,11 @@ msgstr "" #: src/components/buttons/PrintingActions.tsx:178 msgid "Print Labels" -msgstr "" +msgstr "Печать этикеток" #: src/components/buttons/PrintingActions.tsx:184 msgid "Print Reports" -msgstr "" +msgstr "Печать отчетов" #: src/components/buttons/ScanButton.tsx:15 msgid "Scan QR code" @@ -99,7 +107,7 @@ msgstr "Сканировать QR код" #: src/components/buttons/ScanButton.tsx:20 msgid "Open QR code scanner" -msgstr "" +msgstr "Использовать сканер QR-кода" #: src/components/buttons/SpotlightButton.tsx:14 msgid "Open spotlight" @@ -107,33 +115,33 @@ msgstr "" #: src/components/buttons/YesNoButton.tsx:16 msgid "Pass" -msgstr "" +msgstr "Пропустить" #: src/components/buttons/YesNoButton.tsx:17 msgid "Fail" -msgstr "" +msgstr "Сбой" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" -msgstr "" +msgstr "Да" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" -msgstr "" +msgstr "Нет" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" -msgstr "" +msgstr "Имя не определено" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" -msgstr "" +msgstr "Скопировано" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" -msgstr "" +msgstr "Копировать" #: src/components/details/DetailsImage.tsx:65 msgid "Remove Image" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Удалить связанное изображение?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Удалить" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Отменить" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Очистить" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -185,117 +192,85 @@ msgstr "Подтвердить" #: src/components/details/DetailsImage.tsx:267 msgid "Select from existing images" -msgstr "" +msgstr "Выбрать из существующих изображений" #: src/components/details/DetailsImage.tsx:275 msgid "Select Image" -msgstr "" +msgstr "Выбрать изображение" #: src/components/details/DetailsImage.tsx:287 msgid "Upload new image" -msgstr "" +msgstr "Загрузить новое изображение" #: src/components/details/DetailsImage.tsx:294 msgid "Upload Image" -msgstr "" +msgstr "Загрузить изображение" #: src/components/details/DetailsImage.tsx:307 msgid "Delete image" -msgstr "" - -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" +msgstr "Удалить изображение" #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" -msgstr "" +msgstr "Не удалось загрузить изображение" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Успешно" #: src/components/editors/NotesEditor.tsx:157 msgid "Notes saved successfully" -msgstr "" +msgstr "Заметка успешно сохранена" #: src/components/editors/NotesEditor.tsx:166 msgid "Failed to save notes" -msgstr "" +msgstr "Не удалось сохранить заметки" #: src/components/editors/NotesEditor.tsx:198 msgid "Preview Notes" -msgstr "" +msgstr "Просмотр заметок" #: src/components/editors/NotesEditor.tsx:198 msgid "Edit Notes" -msgstr "" +msgstr "Редактировать заметки" #: src/components/editors/NotesEditor.tsx:212 msgid "Save Notes" -msgstr "" +msgstr "Сохранить заметки" #: src/components/editors/TemplateEditor/CodeEditor/index.tsx:9 msgid "Code" -msgstr "" +msgstr "Код" #: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:44 #~ msgid "Failed to parse error response from server." @@ -303,11 +278,11 @@ msgstr "" #: src/components/editors/TemplateEditor/PdfPreview/PdfPreview.tsx:81 msgid "Preview not available, click \"Reload Preview\"." -msgstr "" +msgstr "Предварительный просмотр недоступен, нажмите \"Перезагрузить предпросмотр\"." #: src/components/editors/TemplateEditor/PdfPreview/index.tsx:9 msgid "PDF Preview" -msgstr "" +msgstr "Предварительный просмотр в PDF" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:104 msgid "Error loading template" @@ -348,7 +323,7 @@ msgstr "" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:262 msgid "Reload preview" -msgstr "" +msgstr "Перезагрузить предварительный просмотр" #: src/components/editors/TemplateEditor/TemplateEditor.tsx:263 msgid "Use the currently stored template from the server" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Ошибка формы" @@ -431,18 +405,17 @@ msgstr "Ошибка формы" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Обновить" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Ошибка входа" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Проверьте введенные данные и повторите попытку." @@ -487,7 +460,7 @@ msgstr "Проверьте введенные данные и повторите #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Отправка почты прошла успешно" @@ -615,7 +588,7 @@ msgstr "Узел" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Состояние: <0>рабочий ({0}), <1>плагины{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Поиск" @@ -683,11 +656,11 @@ msgstr "Загрузка" msgid "No results found" msgstr "Ничего не найдено" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "Миниатюра" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" +msgstr "Описание поля" + +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" -msgstr "" - -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" -msgstr "" +msgstr "Привязать штрих-код" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" -msgstr "" +msgstr "Привязать пользовательский штрих-код" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" -msgstr "" +msgstr "Отвязать штрих-код" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" -msgstr "" +msgstr "Отвязать пользовательский штрих-код" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Изменить" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -959,7 +977,7 @@ msgstr "" #: src/components/modals/AboutInvenTreeModal.tsx:162 msgid "Links" -msgstr "" +msgstr "Ссылки" #: src/components/modals/AboutInvenTreeModal.tsx:168 msgid "InvenTree Documentation" @@ -1172,13 +1190,13 @@ msgstr "Настройки аккаунта" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Страницы" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Плагины" @@ -1235,25 +1253,25 @@ msgstr "Документация" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Уведомления" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "У вас нет непрочитанных уведомлений." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Пометить как прочитанное" @@ -1262,50 +1280,52 @@ msgstr "Пометить как прочитанное" msgid "results" msgstr "результаты" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Введите слова для поиска" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Параметры поиска" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Поиск по выражению" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Произошла ошибка во время поиска запроса" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Нет результатов" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Нет доступных результатов для поискового запроса" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Неизвестная модель: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Детали" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Детали поставщиков" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1363,21 +1384,21 @@ msgstr "Детали производителей" #: src/components/render/ModelType.tsx:63 #: src/pages/part/CategoryDetail.tsx:297 msgid "Part Category" -msgstr "" +msgstr "Категория детали" #: src/components/render/ModelType.tsx:64 #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Категории деталей" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" -msgstr "" +msgstr "На складе" #: src/components/render/ModelType.tsx:73 #: src/pages/company/CompanyDetail.tsx:201 @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Места хранения" @@ -1418,7 +1439,7 @@ msgstr "" #: src/defaults/links.tsx:30 #: src/defaults/menuItems.tsx:43 msgid "Build" -msgstr "" +msgstr "Сборка" #: src/components/render/ModelType.tsx:101 msgid "Builds" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Компании" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Компании" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Заказы на закупку" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Заказы на продажу" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Заказы на возврат" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 -#: src/defaults/links.tsx:29 -#: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 -#: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 -msgid "Stock" +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Неактивный" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" msgstr "" +#: src/components/render/Part.tsx:29 +#: src/defaults/links.tsx:29 +#: src/defaults/menuItems.tsx:38 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 +#: src/pages/stock/LocationDetail.tsx:347 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 +msgid "Stock" +msgstr "Остатки" + #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2223,15 +2266,15 @@ msgstr "" #: src/defaults/links.tsx:26 #: src/defaults/menuItems.tsx:9 msgid "Home" -msgstr "" +msgstr "Домашняя страница" #: src/defaults/actions.tsx:23 #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" -msgstr "" +msgstr "Контрольная панель" #: src/defaults/actions.tsx:24 msgid "Go to the InvenTree dashboard" @@ -2245,12 +2288,12 @@ msgstr "" #: src/defaults/links.tsx:92 #: src/defaults/links.tsx:122 msgid "About InvenTree" -msgstr "" +msgstr "О программе InvenTree" #: src/defaults/actions.tsx:38 #: src/defaults/links.tsx:123 msgid "About the InvenTree org" -msgstr "" +msgstr "О программе InvenTree org" #: src/defaults/actions.tsx:44 msgid "Server Information" @@ -2259,17 +2302,17 @@ msgstr "" #: src/defaults/actions.tsx:45 #: src/defaults/links.tsx:117 msgid "About this Inventree instance" -msgstr "" +msgstr "Об этом экземпляре Inventree" #: src/defaults/actions.tsx:51 #: src/defaults/links.tsx:105 msgid "License Information" -msgstr "" +msgstr "Информация о лицензии" #: src/defaults/actions.tsx:52 #: src/defaults/links.tsx:129 msgid "Licenses for dependencies of the service" -msgstr "" +msgstr "Лицензии на зависимостей сервиса" #: src/defaults/actions.tsx:59 msgid "Open the main navigation menu" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2355,73 +2398,73 @@ msgstr "" #: src/defaults/links.tsx:11 #: src/pages/company/CompanyDetail.tsx:94 msgid "Website" -msgstr "" +msgstr "Веб-сайт" #: src/defaults/links.tsx:16 msgid "GitHub" -msgstr "" +msgstr "GitHub" #: src/defaults/links.tsx:21 msgid "Demo" -msgstr "" +msgstr "Демо" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" -msgstr "" +msgstr "Покупка" #: src/defaults/links.tsx:32 #: src/defaults/menuItems.tsx:53 #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" -msgstr "" +msgstr "Продажи" #: src/defaults/links.tsx:35 #: src/defaults/menuItems.tsx:71 #: src/pages/Index/Playground.tsx:221 msgid "Playground" -msgstr "" +msgstr "Песочница" #: src/defaults/links.tsx:49 msgid "Getting Started" -msgstr "" +msgstr "Начать работу" #: src/defaults/links.tsx:50 msgid "Getting started with InvenTree" -msgstr "" +msgstr "Начало работы с InvenTree" #: src/defaults/links.tsx:56 msgid "API" -msgstr "" +msgstr "API" #: src/defaults/links.tsx:57 msgid "InvenTree API documentation" -msgstr "" +msgstr "Документация по API InvenTree" #: src/defaults/links.tsx:62 msgid "Developer Manual" -msgstr "" +msgstr "Руководство разработчика" #: src/defaults/links.tsx:63 msgid "InvenTree developer manual" -msgstr "" +msgstr "Инструкция по разработке InvenTree" #: src/defaults/links.tsx:68 msgid "FAQ" -msgstr "" +msgstr "FAQ" #: src/defaults/links.tsx:69 msgid "Frequently asked questions" -msgstr "" +msgstr "Часто задаваемые вопросы" #: src/defaults/links.tsx:76 #~ msgid "Instance" @@ -2430,7 +2473,7 @@ msgstr "" #: src/defaults/links.tsx:79 #: src/defaults/links.tsx:116 msgid "System Information" -msgstr "" +msgstr "Информация о системе" #: src/defaults/links.tsx:83 #~ msgid "InvenTree" @@ -2442,7 +2485,7 @@ msgstr "" #: src/defaults/links.tsx:128 msgid "Licenses" -msgstr "" +msgstr "Лицензии" #: src/defaults/menuItems.tsx:7 #~ msgid "Open sourcea" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" -msgstr "" +msgstr "В наличии" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" -msgstr "" +msgstr "Добавить Остатки" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" -msgstr "" +msgstr "Удалить запасы" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" -msgstr "" +msgstr "Перемещение запасов" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" -msgstr "" +msgstr "Подсчет остатков" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" -msgstr "" +msgstr "Изменить статус запасов" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" -msgstr "" +msgstr "Объединить Запасы" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" -msgstr "" +msgstr "Удалить складскую позицию" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Проверьте свой почтовый ящик, чтобы получить ссылку на сброс. Это работает только в том случае, если у вас есть учетная запись. Проверьте также спам." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3218,7 +3324,7 @@ msgstr "" #: src/pages/Index/Scan.tsx:359 msgid "Open Link" -msgstr "" +msgstr "Открыть ссылку" #: src/pages/Index/Scan.tsx:375 msgid "History is locally kept in this browser." @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" -msgstr "" +msgstr "Специальная единица" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Заказы на сборку" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3733,31 +3824,31 @@ msgstr "" #: src/tables/plugin/PluginListTable.tsx:276 #: src/tables/stock/LocationTypesTable.tsx:65 msgid "Description" -msgstr "" +msgstr "Описание" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "Подробности сборки" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" +msgstr "Подробности сборки" + +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" -msgstr "" +msgstr "Внешняя ссылка" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4122,7 +4201,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:102 msgid "Parent Category" -msgstr "" +msgstr "Родительская категория" #: src/pages/part/CategoryDetail.tsx:119 msgid "Subcategories" @@ -4145,13 +4224,13 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:150 msgid "Top level part category" -msgstr "" +msgstr "Категория детали верхнего уровня" #: src/pages/part/CategoryDetail.tsx:160 #: src/pages/part/CategoryDetail.tsx:214 #: src/tables/part/PartCategoryTable.tsx:93 msgid "Edit Part Category" -msgstr "" +msgstr "Добавить категорию детали" #: src/pages/part/CategoryDetail.tsx:173 #: src/pages/stock/LocationDetail.tsx:225 @@ -4161,7 +4240,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:181 #: src/pages/part/CategoryDetail.tsx:219 msgid "Delete Part Category" -msgstr "" +msgstr "Удалить категорию детали" #: src/pages/part/CategoryDetail.tsx:184 msgid "Parts Action" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "Ревизия" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" -msgstr "" +msgstr "Категория" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" -msgstr "" +msgstr "Ед. изм" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" -msgstr "" +msgstr "Ссылка" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "Заблокировано" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" -msgstr "" +msgstr "Ценовой диапазон" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Часть не активна" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "Деталь заблокирована" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Добавить фильтр" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5588,11 +5741,11 @@ msgstr "" #: src/tables/general/AttachmentTable.tsx:225 msgid "Is Link" -msgstr "" +msgstr "Это ссылка" #: src/tables/general/AttachmentTable.tsx:226 msgid "Show link attachments" -msgstr "" +msgstr "Показывать встроенные вложения" #: src/tables/general/AttachmentTable.tsx:230 msgid "Is File" @@ -5608,7 +5761,7 @@ msgstr "" #: src/tables/general/AttachmentTable.tsx:251 msgid "Add external link" -msgstr "" +msgstr "Добавить внешнюю ссылку" #: src/tables/general/AttachmentTable.tsx:254 #~ msgid "Upload attachment" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,40 +5940,58 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" -msgstr "" +msgstr "Внутренние ед. измерения" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" -#: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 -msgid "Include Subcategories" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + +#: src/tables/part/PartCategoryTable.tsx:60 +#: src/tables/part/PartTable.tsx:196 +msgid "Include Subcategories" +msgstr "Включая подкатегории" + #: src/tables/part/PartCategoryTable.tsx:61 msgid "Include subcategories in results" -msgstr "" +msgstr "Включить подкатегории в результаты" #: src/tables/part/PartCategoryTable.tsx:66 msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,13 +6067,13 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" -msgstr "" +msgstr "Имеет ед. измерения" #: src/tables/part/PartParameterTemplateTable.tsx:42 msgid "Show templates with units" -msgstr "" +msgstr "Показать шаблоны с единицами измерения" #: src/tables/part/PartParameterTemplateTable.tsx:85 msgid "Add Parameter Template" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" -msgstr "" +msgstr "Включить детали в подкатегориях" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" -msgstr "" +msgstr "Фильтр по деталям, в которых есть ед. измерения" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Виртуальный" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6233,7 +6421,7 @@ msgstr "" #: src/tables/plugin/PluginListTable.tsx:287 msgid "Description not available" -msgstr "" +msgstr "Описание недоступно" #: src/tables/plugin/PluginListTable.tsx:319 msgid "Confirm plugin activation" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 -msgid "Part Description" +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 +msgid "Part Description" +msgstr "Описание детали" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" -msgstr "" +msgstr "Ссылка поставщика" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6483,7 +6672,7 @@ msgstr "" #: src/tables/purchasing/SupplierPartTable.tsx:122 msgid "Base units" -msgstr "" +msgstr "Базовая единица измерения" #: src/tables/purchasing/SupplierPartTable.tsx:170 msgid "Supplier part created" @@ -6547,19 +6736,19 @@ msgstr "" #: src/tables/settings/CustomUnitsTable.tsx:50 msgid "Add Custom Unit" -msgstr "" +msgstr "Новая пользовательская ед. измерения" #: src/tables/settings/CustomUnitsTable.tsx:60 msgid "Edit Custom Unit" -msgstr "" +msgstr "Редактировать пользовательскую ед. измерения" #: src/tables/settings/CustomUnitsTable.tsx:68 msgid "Delete Custom Unit" -msgstr "" +msgstr "Удалить специальную ед. измерения" #: src/tables/settings/CustomUnitsTable.tsx:100 msgid "Add custom unit" -msgstr "" +msgstr "Новая пользовательская ед. измерения" #: src/tables/settings/ErrorTable.tsx:29 msgid "When" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/sk/messages.po b/src/frontend/src/locales/sk/messages.po index 24f078a927..fb1c150e3e 100644 --- a/src/frontend/src/locales/sk/messages.po +++ b/src/frontend/src/locales/sk/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sk\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Slovak\n" "Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 3;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/sl/messages.po b/src/frontend/src/locales/sl/messages.po index 4e9782822c..db4305c690 100644 --- a/src/frontend/src/locales/sl/messages.po +++ b/src/frontend/src/locales/sl/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sl\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Plural-Forms: nplurals=4; plural=n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/sr/messages.po b/src/frontend/src/locales/sr/messages.po index 9c03153fe7..8f5f3a30ba 100644 --- a/src/frontend/src/locales/sr/messages.po +++ b/src/frontend/src/locales/sr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Serbian (Latin)\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" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "Kopiraj na tablu" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Grеška" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Da" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Ne" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Uspešno" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Greška Obrasca" @@ -431,18 +405,17 @@ msgstr "Greška Obrasca" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Obnovi" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Neuspešna prijava" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Proverite svoj unos i pokušajte ponovno." @@ -487,7 +460,7 @@ msgstr "Proverite svoj unos i pokušajte ponovno." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Isporuka pošte uspešna" @@ -615,7 +588,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Status: <0>worker ({0}), <1>plugins{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Pretraga" @@ -683,11 +656,11 @@ msgstr "Učitavanje" msgid "No results found" msgstr "Nema pronađenih rezultata" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "Sličice" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Akcije Barkoda" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Vid" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Pogledaj barkod" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Link Barkoda" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Linkuj prilagođeni barkod" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Prekini vezu Barkoda" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Prekini link prilagođenog barkoda" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Izmeni" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Obriši stavku" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Dupliciraj" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Dupliciraj stavku" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/sv/messages.po b/src/frontend/src/locales/sv/messages.po index 7f29f402f2..e358e998f0 100644 --- a/src/frontend/src/locales/sv/messages.po +++ b/src/frontend/src/locales/sv/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: sv\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "Öppna i administratörsgränssnittet" msgid "Copy to clipboard" msgstr "Kopiera till urklipp" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "Skriv ut etikett" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "Utskrift av etiketter lyckades" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Fel" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "Etiketten kunde inte genereras" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "Skriv ut Rapport" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "Utskrift av rapporten lyckades" @@ -113,25 +121,25 @@ msgstr "Lyckades" msgid "Fail" msgstr "Misslyckades" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Ja" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Nej" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "Inget namn definierat" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Kopierad" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Kopiera" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "Vill du ta bort den associerade bilden från denna artikel?" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "Ta bort" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Avbryt" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "Rensa" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "Ladda upp bild" msgid "Delete image" msgstr "Radera bild" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "Artikeln är inte aktiv" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "Inaktiv" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "Artikeln är en mall-artikel (varianter kan skapas från denna artikel)" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "Artikeln kan sammanställas från andra artiklar" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "Artikel kan användas i sammanställningar" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "Artikelns lager spåras med serienummer" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "Artikeln kan köpas av externa leverantörer" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "Artikeln kan säljas till kunder" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "Artikeln är virtuell (ej fysisk artikel)" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Virtuell" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "Bilduppladdning misslyckades" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Lyckades" @@ -396,7 +371,7 @@ msgstr "" #: src/components/errors/NotAuthenticated.tsx:9 msgid "You are not logged in." -msgstr "" +msgstr "Du är inte inloggad." #: src/components/errors/NotFound.tsx:8 msgid "Page Not Found" @@ -416,14 +391,13 @@ msgstr "" #: src/components/errors/ServerError.tsx:8 msgid "Server Error" -msgstr "" +msgstr "Serverfel" #: src/components/errors/ServerError.tsx:9 msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Formulär fel" @@ -431,18 +405,17 @@ msgstr "Formulär fel" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Uppdatera" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Inloggningen misslyckades" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Kontrollera din inmatning och försök igen." @@ -487,7 +460,7 @@ msgstr "Kontrollera din inmatning och försök igen." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "E-postleverans lyckad" @@ -615,7 +588,7 @@ msgstr "Värd" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Stat: <0>arbetare ({0}), <1>plugins{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Sök" @@ -683,11 +656,11 @@ msgstr "Laddar" msgid "No results found" msgstr "Inga resultat hittades" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "modelRenderer post krävs för tabeller" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "Inga poster tillgängliga" @@ -700,114 +673,159 @@ msgstr "Inga poster tillgängliga" msgid "Thumbnail" msgstr "Miniatyrbild" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" -msgstr "" +msgstr "Radera rad" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" -msgstr "" +msgstr "Rad" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Streckkods åtgärder" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Visa" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Visa streckkod" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Länka streckkod" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Länka anpassad streckkod" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Ta bort länk för streckkod" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Ta bort länk för anpassad streckkod" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Redigera" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Radera objekt" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Duplicera" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Duplicera objekt" @@ -1172,13 +1190,13 @@ msgstr "Kontoinställningar" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Systeminställningar" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Admin-center" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Sidor" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Plugins" @@ -1235,25 +1253,25 @@ msgstr "Dokumentation" msgid "About" msgstr "Om" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Notifikationer" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Du har inga olästa aviseringar." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Avisering" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Markera som läst" @@ -1262,50 +1280,52 @@ msgstr "Markera som läst" msgid "results" msgstr "resultat" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Ange sökord" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Sökalternativ" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Regex sökning" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Hela ordsökningen" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Ett fel inträffade under sökfrågan" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Inga resultat" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Inga resultat tillgängliga för sökfrågan" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Okänd modell: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Artkel" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Artiklar" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Leverantörsartikel" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Artikelkategorier" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Lagerplats" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Företag" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Företag" msgid "Project Code" msgstr "Projektkod" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Projektkoder" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Inköpsorder" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Försäljningsorder" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Returorder" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Användare" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Användare" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "Etikettmall" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "Etikettmallar" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "Inaktiv" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Lagersaldo" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "Arabiska" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bulgariska" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Danska" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "Tyska" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Grekiska" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "Engelska" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Spanska" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finska" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "Franska" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindi" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Ungerska" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Italienska" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japanska" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "Lettiska" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norska" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polska" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "Rumänska" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Ryska" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "Slovakiska" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Svenska" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Turkiska" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "Ukrainska" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "Hem" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Kontrollpanel" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Senast uppdaterade" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Få i lager" @@ -2368,10 +2411,10 @@ msgstr "Demo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "Skanna streckkod" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "Ändra status" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Status" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Åtgärder" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Serienummer" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Åtgärder" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Kolla din inkorg för en återställningslänk. Detta fungerar bara om du har ett konto. Kontrollera även i skräppost." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "Återställningen misslyckades" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Lastare" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "Valutor" @@ -3438,37 +3544,37 @@ msgstr "Valutor" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "Lägg till en ny användare" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Etiketter" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Byggordrar" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Konto" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Kontoinställningar" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Status" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "Beskrivning" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "Redigera företag" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Parametrar" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Kategori" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "IAN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Enheter" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Länk" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Aktiv" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Prisintervall" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Komponent" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "Artikeln är inte aktiv" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Lägg till filter" msgid "Clear Filters" msgstr "Rensa filter" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Otillåten" msgid "Not found" msgstr "Hittades inte" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Streckkods åtgärder" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Uppdatera data" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Tabellfilter" @@ -5117,128 +5219,81 @@ msgstr "Tabellfilter" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Spårbart objekt" @@ -5324,8 +5444,37 @@ msgstr "Spårbart objekt" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Montering" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Inkludera underkategorier" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Har enheter" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Filtrera på aktiv artiklestatus" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Montering" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Filtrera efter monteringsattribut" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Inkludera artiklar från underkategorier" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Filtrera efter komponentattribut" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Filtrera på spårbart attribut" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Filtrera efter artiklar som har enheter" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "Har IAN" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Filtrera efter artiklar som har ett internt artikelnummer" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "I lager" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Filtrera efter artiklar som har enheter" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Filtrera på ariklar som har lågt saldo" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Kan köpas" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Filtrera på artiklar som kan köpas" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Försäljningsbar" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Filtrera på artiklar som kan säljas" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Virtuell" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Filtrera efter artiklar som är virtuella" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Inte virtuell" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "Radera grupp" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "Är du säker på att du vill radera denna grupp?" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "Lägg till grupp" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "Redigera grupp" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "Ikon" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Läs dokumenten" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/th/messages.po b/src/frontend/src/locales/th/messages.po index 07c025b6fb..ed31558e82 100644 --- a/src/frontend/src/locales/th/messages.po +++ b/src/frontend/src/locales/th/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: th\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:39\n" "Last-Translator: \n" "Language-Team: Thai\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/tr/messages.po b/src/frontend/src/locales/tr/messages.po index a573a1ec24..6f856bfad7 100644 --- a/src/frontend/src/locales/tr/messages.po +++ b/src/frontend/src/locales/tr/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: tr\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Hata" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Vazgeç" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Sanal" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Başarılı" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Giriş başarısız" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Lütfen bilgilerinizi kontrol edin ve yeniden giriş yapın." @@ -487,7 +460,7 @@ msgstr "Lütfen bilgilerinizi kontrol edin ve yeniden giriş yapın." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "E-posta teslimi başarılı" @@ -615,7 +588,7 @@ msgstr "Sunucu" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Durum: <0>worker ({0}), <1>eklenti{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "Yükleniyor" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "Küçük resim" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "Hesap ayarları" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Sayfalar" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Eklentiler" @@ -1235,25 +1253,25 @@ msgstr "Dokümantasyon" msgid "About" msgstr "Hakkında" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Bildirimler" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "sonuçlar" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Arama metnini gir" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Arama Seçenekleri" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Regex arama" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Tam kelime arama" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Arama sorgusu sırasında bir hata oluştu" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Sonuç yok" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Arama sorgusu için sonuç yok" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Parça" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Parçalar" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Tedarikçi Parçaları" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Parça Kategorileri" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Stok Konumları" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Şirketler" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Şirketler" msgid "Project Code" msgstr "Proje Kodu" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Satın Alma Emirleri" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Satış Emirleri" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "İade Emirleri" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Kullanıcı" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Stok" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "Ana Sayfa" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Panel" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Son Güncellenenler" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Düşük Stok" @@ -2368,10 +2411,10 @@ msgstr "Demo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Durum" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Eylemler" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Eylemler" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Yükleyici" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Yapım İşi Emirleri" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Durum" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "Açıklama" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Kategori" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "DPN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Birim" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Bağlantı" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Aktif" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Fiyat Aralığı" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Bileşen" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Filtre Ekle" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Yasaklı" msgid "Not found" msgstr "Bulunamadı" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Barkod işlemleri" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Veriyi yenile" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Tablo filtreleri" @@ -5117,128 +5219,81 @@ msgstr "Tablo filtreleri" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Takip Edilebilir" @@ -5324,8 +5444,37 @@ msgstr "Takip Edilebilir" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Montaj" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Alt Kategorileri Dahil Et" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Birimi Var" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Parçanın aktiflik durumuna göre filtrele" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Montaj" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Montaj niteliğine göre filtrele" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Alt kategorilerdeki parçaları dahil et" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Bileşen niteliğine göre filtrele" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Takip edilebilirliğine göre filtrele" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Birimi olan parçaları filtrele" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "DPN Var" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Dahili parça numarası bulunan parçaları filtrele" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "Stoğu Var" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Stoğu olan parçaları filtrele" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Düşük stoğu olan parçaları filtrele" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Satın Alınabilir" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Satın alınabilir parçaları filtrele" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Satılabilir" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Satılabilir parçaları filtrele" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Sanal" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Sanal parçaları filtrele" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Sanal Değil" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Belgeleri okuyun" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/uk/messages.po b/src/frontend/src/locales/uk/messages.po index 54a06e3a50..614e18c6a0 100644 --- a/src/frontend/src/locales/uk/messages.po +++ b/src/frontend/src/locales/uk/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: uk\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Ukrainian\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" @@ -20,11 +20,11 @@ msgstr "" #: src/components/Boundary.tsx:12 msgid "Error rendering component" -msgstr "" +msgstr "Помилка рендерингу компонента" #: src/components/Boundary.tsx:14 msgid "An error occurred while rendering this component. Refer to the console for more information." -msgstr "" +msgstr "Сталася помилка під час рендерингу цього компонента. Передивитись в консоль для отримання додаткової інформації." #: src/components/DashboardItemProxy.tsx:34 msgid "Title" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -431,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -487,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -615,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -683,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1172,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1235,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1262,50 +1280,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1369,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1394,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2229,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2368,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2381,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2706,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2722,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3689,36 +3794,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3953,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4748,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -5117,128 +5219,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5324,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/vi/messages.po b/src/frontend/src/locales/vi/messages.po index 74af34e7aa..3f5867d939 100644 --- a/src/frontend/src/locales/vi/messages.po +++ b/src/frontend/src/locales/vi/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: vi\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -38,41 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "Sao chép đến bảng tạm" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "Lỗi" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -113,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "Đồng ý" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "Không" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "Đã sao chép" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "Sao chép" @@ -144,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "Hủy bỏ" @@ -177,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -203,73 +210,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "Ảo" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "Thành công" @@ -422,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "Lỗi form" @@ -431,18 +405,17 @@ msgstr "Lỗi form" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "Cập nhật" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -477,7 +450,7 @@ msgstr "Đăng nhập thất bại" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "Kiểm tra đầu vào của bạn và thử lại." @@ -487,7 +460,7 @@ msgstr "Kiểm tra đầu vào của bạn và thử lại." #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "Thư đã được gửi đi thành công" @@ -615,7 +588,7 @@ msgstr "Host" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -667,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "Trạng thái: <0>worker ({0}), <1>plugins{1}" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "Tìm kiếm" @@ -683,11 +656,11 @@ msgstr "Đang tải" msgid "No results found" msgstr "Không có kết quả nào được tìm thấy" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -700,114 +673,159 @@ msgstr "" msgid "Thumbnail" msgstr "Ảnh thu nhỏ" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:166 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:167 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:184 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:205 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:233 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:263 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:281 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:322 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:355 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:356 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:361 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:362 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:379 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -818,51 +836,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "Chức năng mã vạch" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "Xem" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "Xem mã vạch" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "Liên kết mã vạch" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "Liên kết mã vạch tùy chỉnh" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "Gỡ liên kết mã vạch" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "Gỡ bỏ mã vạch tùy chỉnh" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "Sửa" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "Xoá mặt hàng" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "Nhân bản" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "Nhân bản hàng hóa" @@ -1172,13 +1190,13 @@ msgstr "Cài đặt tài khoản" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "Thiết lập hệ thống" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "Trung tâm quản trị" @@ -1221,7 +1239,7 @@ msgid "Pages" msgstr "Trang" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "Plugins" @@ -1235,25 +1253,25 @@ msgstr "Tài liệu" msgid "About" msgstr "Giới thiệu" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "Thông báo" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "Bạn chưa có thông báo mới." -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "Thông báo" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "Đánh dấu đã đọc" @@ -1262,50 +1280,52 @@ msgstr "Đánh dấu đã đọc" msgid "results" msgstr "kết quả" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "Nhập văn bản tìm kiếm" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "Tùy chọn tìm kiếm" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "Tìm kiếm regex" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "Tìm phù hợp toàn bộ từ" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "Lỗi trong quá trình truy vấn tìm kiếm" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "Không có kết quả" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "Không có kết quả nào được tìm thấy với truy vấn tìm kiếm" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "Model không rõ: {model}" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1319,7 +1339,7 @@ msgstr "Phụ kiện" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "Phụ tùng" @@ -1340,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "Phụ kiện nhà cung cấp" @@ -1352,7 +1373,7 @@ msgid "Supplier Parts" msgstr "Nhà cung cấp phụ kiện" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "Phụ kiện nhà sản xuất" @@ -1369,12 +1390,12 @@ msgstr "Danh mục phụ kiện" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "Danh mục phụ kiện" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "Hàng trong kho" @@ -1394,7 +1415,7 @@ msgstr "Vị trí kho hàng" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "Vị trí kho hàng" @@ -1433,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "Công ty" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "Doanh nghiệp" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1450,146 +1479,146 @@ msgstr "Doanh nghiệp" msgid "Project Code" msgstr "Mã dự án" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "Mã dự án" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "Đơn đặt mua" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "Đơn hàng mua" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "Đơn đặt bán" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "Đơn hàng bán" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "Vận chuyển đơn hàng" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "Vận chuyển đơn hàng" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "Đơn hàng trả lại" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "Đơn hàng trả lại" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "Địa chỉ" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "Địa chỉ" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "Liên hệ" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "Danh bạ" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "Chủ sở hữu" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "Chủ sở hữu" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "Người dùng" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "Người dùng" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1597,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "Lô hàng" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "Kho hàng" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1686,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -2004,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -2084,138 +2119,146 @@ msgid "Show Boxes" msgstr "Hiển thị hộp" #: src/contexts/LanguageContext.tsx:20 +msgid "Arabic" +msgstr "" + +#: src/contexts/LanguageContext.tsx:21 msgid "Bulgarian" msgstr "Bulgarian" -#: src/contexts/LanguageContext.tsx:21 +#: src/contexts/LanguageContext.tsx:22 msgid "Czech" msgstr "Czech" -#: src/contexts/LanguageContext.tsx:22 +#: src/contexts/LanguageContext.tsx:23 msgid "Danish" msgstr "Danish" -#: src/contexts/LanguageContext.tsx:23 +#: src/contexts/LanguageContext.tsx:24 msgid "German" msgstr "German" -#: src/contexts/LanguageContext.tsx:24 +#: src/contexts/LanguageContext.tsx:25 msgid "Greek" msgstr "Greek" -#: src/contexts/LanguageContext.tsx:25 +#: src/contexts/LanguageContext.tsx:26 msgid "English" msgstr "English" -#: src/contexts/LanguageContext.tsx:26 +#: src/contexts/LanguageContext.tsx:27 msgid "Spanish" msgstr "Spanish" -#: src/contexts/LanguageContext.tsx:27 +#: src/contexts/LanguageContext.tsx:28 msgid "Spanish (Mexican)" msgstr "Spanish (Mexican)" -#: src/contexts/LanguageContext.tsx:28 +#: src/contexts/LanguageContext.tsx:29 +msgid "Estonian" +msgstr "" + +#: src/contexts/LanguageContext.tsx:30 msgid "Farsi / Persian" msgstr "Farsi / Persian" -#: src/contexts/LanguageContext.tsx:29 +#: src/contexts/LanguageContext.tsx:31 msgid "Finnish" msgstr "Finnish" -#: src/contexts/LanguageContext.tsx:30 +#: src/contexts/LanguageContext.tsx:32 msgid "French" msgstr "French" -#: src/contexts/LanguageContext.tsx:31 +#: src/contexts/LanguageContext.tsx:33 msgid "Hebrew" msgstr "Hebrew" -#: src/contexts/LanguageContext.tsx:32 +#: src/contexts/LanguageContext.tsx:34 msgid "Hindi" msgstr "Hindi" -#: src/contexts/LanguageContext.tsx:33 +#: src/contexts/LanguageContext.tsx:35 msgid "Hungarian" msgstr "Hungarian" -#: src/contexts/LanguageContext.tsx:34 +#: src/contexts/LanguageContext.tsx:36 msgid "Italian" msgstr "Italian" -#: src/contexts/LanguageContext.tsx:35 +#: src/contexts/LanguageContext.tsx:37 msgid "Japanese" msgstr "Japanese" -#: src/contexts/LanguageContext.tsx:36 +#: src/contexts/LanguageContext.tsx:38 msgid "Korean" msgstr "Korean" -#: src/contexts/LanguageContext.tsx:37 +#: src/contexts/LanguageContext.tsx:39 msgid "Latvian" msgstr "" -#: src/contexts/LanguageContext.tsx:38 +#: src/contexts/LanguageContext.tsx:40 msgid "Dutch" msgstr "Dutch" -#: src/contexts/LanguageContext.tsx:39 +#: src/contexts/LanguageContext.tsx:41 msgid "Norwegian" msgstr "Norwegian" -#: src/contexts/LanguageContext.tsx:40 +#: src/contexts/LanguageContext.tsx:42 msgid "Polish" msgstr "Polish" -#: src/contexts/LanguageContext.tsx:41 +#: src/contexts/LanguageContext.tsx:43 msgid "Portuguese" msgstr "Portuguese" -#: src/contexts/LanguageContext.tsx:42 +#: src/contexts/LanguageContext.tsx:44 msgid "Portuguese (Brazilian)" msgstr "Portuguese (Brazilian)" -#: src/contexts/LanguageContext.tsx:43 +#: src/contexts/LanguageContext.tsx:45 msgid "Romanian" msgstr "" -#: src/contexts/LanguageContext.tsx:44 +#: src/contexts/LanguageContext.tsx:46 msgid "Russian" msgstr "Russian" -#: src/contexts/LanguageContext.tsx:45 +#: src/contexts/LanguageContext.tsx:47 msgid "Slovak" msgstr "" -#: src/contexts/LanguageContext.tsx:46 +#: src/contexts/LanguageContext.tsx:48 msgid "Slovenian" msgstr "Slovenian" -#: src/contexts/LanguageContext.tsx:47 +#: src/contexts/LanguageContext.tsx:49 msgid "Swedish" msgstr "Swedish" -#: src/contexts/LanguageContext.tsx:48 +#: src/contexts/LanguageContext.tsx:50 msgid "Thai" msgstr "Thai" -#: src/contexts/LanguageContext.tsx:49 +#: src/contexts/LanguageContext.tsx:51 msgid "Turkish" msgstr "Turkish" -#: src/contexts/LanguageContext.tsx:50 +#: src/contexts/LanguageContext.tsx:52 msgid "Ukrainian" msgstr "" -#: src/contexts/LanguageContext.tsx:51 +#: src/contexts/LanguageContext.tsx:53 msgid "Vietnamese" msgstr "Tiếng Việt" -#: src/contexts/LanguageContext.tsx:52 +#: src/contexts/LanguageContext.tsx:54 msgid "Chinese (Simplified)" msgstr "Chinese (Simplified)" -#: src/contexts/LanguageContext.tsx:53 +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "Chinese (Traditional)" @@ -2229,7 +2272,7 @@ msgstr "Trang chủ" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "Bảng điều khiển" @@ -2296,7 +2339,7 @@ msgid "Recently Updated" msgstr "Mới Cập Nhật" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "Còn ít hàng" @@ -2368,10 +2411,10 @@ msgstr "Demo" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "Mua sắm" @@ -2381,7 +2424,7 @@ msgstr "Mua sắm" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "Bán hàng" @@ -2605,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "Danh mục phụ kiện cha" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2617,80 +2656,159 @@ msgstr "Danh mục phụ kiện cha" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "Danh mục phụ kiện cha" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "Trạng thái" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "Đã nhận" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "Chức năng" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2698,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "Thêm số lượng đã có theo gói thay vì các mục đơn lẻ" @@ -2706,15 +2824,15 @@ msgstr "Thêm số lượng đã có theo gói thay vì các mục đơn lẻ" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "Nhập số lượng khởi đầu cho kho hàng này" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "Số sê-ri" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Điền số sê-ri cho kho mới (hoặc để trống)" @@ -2722,94 +2840,82 @@ msgstr "Điền số sê-ri cho kho mới (hoặc để trống)" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "Còn hàng" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "Chức năng" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "Thêm" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "Đếm" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2833,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2853,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "Kiểm tra hộp thư để lấy liên kết đặt lại. Việc này chỉ có tác dụng khi bạn có tài khoản. Cần kiểm tra thư mục Spam/Junk." -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "Thiết lập lại thất bại" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2879,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "Mẫu không hợp lệ" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "tham số phương thức không được cung cấp" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3418,19 +3524,19 @@ msgstr "Thanh tải" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3438,37 +3544,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "Tham số phụ kiện" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3615,45 +3721,44 @@ msgid "Labels" msgstr "Nhãn" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "Báo cáo" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "Kiểm kê" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "Đơn đặt bản dựng" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "Chuyển sang thiết lập người dùng" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "Tài khoản" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "Bảo mật" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "Tùy chọn hiển thị" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "Cài đặt tài khoản" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "Chuyển sang thiết lập hệ thống" @@ -3689,36 +3794,22 @@ msgstr "Đánh dấu chưa đọc" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "Trạng thái" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3735,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "Mô tả" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "Đầu ra hoàn thiện" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3765,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "Chịu trách nhiệm" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "Ngày mục tiêu" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3801,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3810,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3827,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "Chi tiết bản dựng" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" -msgstr "Phân kho" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" +msgstr "Chi tiết bản dựng" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "Dòng hàng hóa" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "Đầu ra chưa hoàn hiện" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "Kho tiêu thụ" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "Đơn đặt bản dựng con" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "Đính kèm" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "Ghi chú" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3896,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3929,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3941,9 +4036,9 @@ msgstr "Nhà cung cấp" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "Nhà sản xuất" @@ -3953,7 +4048,7 @@ msgstr "Nhà sản xuất" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3995,121 +4090,105 @@ msgstr "Sửa doanh nghiệp" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "Thông số" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "Nhà cung cấp" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "Số lượng gói" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "Sửa sản phẩm nhà cung cấp" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "Thêm sản phẩm nhà cung cấp" @@ -4187,144 +4266,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "Danh mục" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "IPN" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "Đơn vị" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "Liên kết" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "Hoạt động" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4335,130 +4425,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "Khoảng giá" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "Biến thể" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "Phân bổ" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "Hóa đơn nguyên vật liệu" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "Sử dụng trong" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "Mẫu thử nghiệm" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "Phụ kiện liên quan" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "Có sẵn" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "On Order" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "Sửa phụ kiện" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4504,7 +4607,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4513,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "Thành phần" @@ -4542,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "Đơn giá" @@ -4612,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4624,19 +4728,19 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" @@ -4684,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "Dòng hàng hóa" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4712,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "Chi tiết đơn đặt" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "Chức năng đơn đặt" @@ -4748,6 +4836,12 @@ msgstr "Chức năng đơn đặt" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4762,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4837,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "Sản phẩm cơ bản" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4853,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4874,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "Theo dõi tồn kho" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "Mục đã cài đặt" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "Mục con" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "Sửa hàng trong kho" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4906,37 +5000,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "Đếm hàng" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "Thêm hàng" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "Xóa hàng" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "Chuyển" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "Chuyển giao hàng" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4977,7 +5079,7 @@ msgstr "" #: src/tables/DownloadAction.tsx:24 #~ msgid "Excel (.xls)" -#~ msgstr "" +#~ msgstr "Excel (.xls)" #: src/tables/DownloadAction.tsx:38 msgid "Download Data" @@ -5044,7 +5146,7 @@ msgstr "Thêm bộ lọc" msgid "Clear Filters" msgstr "Xóa bộ lọc" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -5070,28 +5172,28 @@ msgstr "Bị cấm" msgid "Not found" msgstr "Không tìm thấy" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -5100,16 +5202,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "Chức năng mã vạch" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "Làm mới dữ liệu" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "Bộ lọc bảng" @@ -5117,128 +5219,81 @@ msgstr "Bộ lọc bảng" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5249,30 +5304,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "Bom item updated" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5281,32 +5357,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5315,7 +5435,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "Có thể theo dõi" @@ -5324,8 +5444,37 @@ msgstr "Có thể theo dõi" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5346,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5359,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "Phân kho" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5475,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5622,81 +5775,81 @@ msgstr "Không tìm thấy tệp đính kèm" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5704,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5787,27 +5940,45 @@ msgstr "Tuổi" msgid "Message" msgstr "Nội dụng tin nhắn" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "Sửa tham số phụ kiện" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "Lắp ráp" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "Bao gồm danh mục con" @@ -5820,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5875,7 +6046,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "Bao gồm các biến thể" @@ -5896,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "Có đơn vị" @@ -5920,120 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "Thêm mẫu tham số" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "Kho tối thiểu" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "Phân bổ đơn hàng bản dựng" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "Phân bổ đơn hàng bán" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "Lọc theo trạng thái mở phụ kiện" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "Lắp ráp" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "Lọc theo thuộc tính lắp ráp" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "Bao gồm phụ kiên trong danh mục con" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "Lọc theo thuộc tính thành phần" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "Lọc theo thuộc tính có thể theo dõi" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "Lọc theo phụ kiện có chứa đơn vị" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "Có IPN" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "Lọc theo sản phẩm có số sản phẩm nội bộ" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "Có kho" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "Lọc theo sản phẩm có trong kho" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "Lọc theo sản phẩm có ít hàng" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "Có thể mua" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "Lọc theo sản phẩm có thể mua" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "Có thể bán" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "Lọc theo sản phẩm có thể bán" -#: src/tables/part/PartTable.tsx:242 +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" +msgstr "Ảo" + +#: src/tables/part/PartTable.tsx:251 msgid "Filter by parts which are virtual" msgstr "Lọc theo sản phẩm ảo" -#: src/tables/part/PartTable.tsx:246 +#: src/tables/part/PartTable.tsx:255 msgid "Not Virtual" msgstr "Không ảo" -#: src/tables/part/PartTable.tsx:251 +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6372,7 +6560,7 @@ msgid "Sample" msgstr "Mẫu" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "Đã cài đặt" @@ -6425,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "Mô tả sản phẩm" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "Tổng số lượng" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "Đã nhận" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "Mã nhà cung cấp" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "Liên kết nhà cung cấp" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "Mã nhà sản xuất" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "Đích đến" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "Thêm hạng mục" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "Sửa hạng mục" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "Nhận hạng mục" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "Thêm hạng mục" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "Nhận hàng hóa" @@ -6626,24 +6815,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6658,7 +6847,7 @@ msgstr "" #: src/tables/settings/ImportSessionTable.tsx:70 msgid "Uploaded" -msgstr "Uploaded" +msgstr "" #: src/tables/settings/ImportSessionTable.tsx:80 msgid "Imported Rows" @@ -6849,193 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" @@ -7191,3 +7388,4 @@ msgstr "Đọc tài liệu" #: src/views/MobileAppView.tsx:35 msgid "Ignore and continue to Desktop view" msgstr "" + diff --git a/src/frontend/src/locales/zh-hans/messages.po b/src/frontend/src/locales/zh-hans/messages.po index 8402595676..c95d8e2ba9 100644 --- a/src/frontend/src/locales/zh-hans/messages.po +++ b/src/frontend/src/locales/zh-hans/messages.po @@ -33,41 +33,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -108,25 +116,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -139,22 +147,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -172,7 +179,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -198,73 +205,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -417,8 +392,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -426,18 +400,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -591,7 +564,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -643,7 +616,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -659,11 +632,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -676,114 +649,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:155 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:156 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:173 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:194 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:222 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:252 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:270 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:311 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:344 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:345 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:350 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:351 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:368 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:383 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -794,51 +812,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1148,13 +1166,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1189,7 +1207,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1203,25 +1221,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1230,50 +1248,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1287,7 +1307,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1310,7 +1330,8 @@ msgstr "" #: src/components/render/ModelType.tsx:45 #: src/pages/company/SupplierPartDetail.tsx:192 #: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1337,12 +1358,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1362,7 +1383,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1401,15 +1422,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1418,146 +1447,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:348 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 #: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1565,32 +1594,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:307 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:127 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1654,12 +1699,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "" @@ -1968,10 +2007,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "" @@ -2048,138 +2083,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2193,7 +2236,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2260,7 +2303,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2327,7 +2370,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:236 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:351 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2337,7 +2380,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2497,10 +2540,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "" @@ -2509,80 +2548,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:145 +#: src/pages/company/SupplierPartDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:99 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:117 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:134 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2590,7 +2708,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2598,15 +2716,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2614,94 +2732,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2767,12 +2873,12 @@ msgstr "" #~ msgstr "" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3178,19 +3284,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3198,37 +3304,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3375,45 +3481,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3445,36 +3550,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 #: src/pages/company/ManufacturerPartDetail.tsx:78 #: src/pages/company/SupplierPartDetail.tsx:85 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3491,29 +3582,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3521,34 +3612,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3557,7 +3648,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3566,11 +3657,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "" @@ -3583,62 +3669,69 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 #: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:265 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:276 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3652,14 +3745,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:319 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3709,7 +3802,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3753,7 +3846,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:71 #: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:77 msgid "Internal Part" msgstr "" @@ -3777,12 +3870,12 @@ msgid "Manufacturer Part Details" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" @@ -3806,25 +3899,9 @@ msgstr "" msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - #: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:112 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:153 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" @@ -3846,7 +3923,7 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:252 msgid "Received Stock" msgstr "" @@ -3943,144 +4020,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4091,130 +4179,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartPricingPanel.tsx:72 msgid "No pricing data found for this part." msgstr "" @@ -4256,7 +4357,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4265,7 +4366,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4294,8 +4395,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:179 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4364,7 +4465,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4436,26 +4538,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4464,33 +4562,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:309 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4500,6 +4586,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4514,17 +4606,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4589,11 +4681,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4605,15 +4697,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4626,31 +4718,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4658,37 +4750,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4796,7 +4896,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -4822,28 +4922,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -4852,16 +4952,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -4869,128 +4969,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5001,30 +5054,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "" @@ -5033,32 +5107,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5067,7 +5185,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5076,8 +5194,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5098,7 +5245,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5111,19 +5258,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5227,10 +5382,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5374,81 +5525,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5456,15 +5607,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5539,27 +5690,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5572,7 +5741,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5627,7 +5796,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5648,7 +5817,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5672,120 +5841,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6124,7 +6310,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6177,55 +6363,51 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:91 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:118 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:164 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:171 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:207 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:224 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:243 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:281 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive items" msgstr "" @@ -6378,24 +6560,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6601,193 +6783,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" diff --git a/src/frontend/src/locales/zh-hant/messages.po b/src/frontend/src/locales/zh-hant/messages.po index 742041a9f8..34e1b13b10 100644 --- a/src/frontend/src/locales/zh-hant/messages.po +++ b/src/frontend/src/locales/zh-hant/messages.po @@ -33,41 +33,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 #: src/components/editors/NotesEditor.tsx:165 -#: src/components/forms/ApiForm.tsx:513 -#: src/components/forms/fields/ApiFormField.tsx:306 -#: src/components/importer/ImportDataSelector.tsx:171 -#: src/components/importer/ImporterColumnSelector.tsx:112 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 #: src/tables/InvenTreeTable.tsx:470 -#: src/tables/InvenTreeTable.tsx:545 -#: src/tables/bom/BomTable.tsx:366 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -108,25 +116,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -139,22 +147,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "" @@ -172,7 +179,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:580 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -198,73 +205,41 @@ msgstr "" msgid "Delete image" msgstr "" -#: src/components/details/PartIcons.tsx:28 -#: src/tables/ColumnRenderers.tsx:35 -msgid "Part is locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:30 -#: src/pages/part/PartDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:698 -#: src/tables/part/PartTable.tsx:175 -msgid "Locked" -msgstr "" - -#: src/components/details/PartIcons.tsx:35 -#: src/tables/ColumnRenderers.tsx:30 -msgid "Part is not active" -msgstr "" - -#: src/components/details/PartIcons.tsx:37 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:704 -msgid "Inactive" -msgstr "" - #: src/components/details/PartIcons.tsx:43 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "" #: src/components/details/PartIcons.tsx:49 -msgid "Part can be assembled from other parts" -msgstr "" +#~ msgid "Part can be assembled from other parts" +#~ msgstr "" #: src/components/details/PartIcons.tsx:55 -msgid "Part can be used in assemblies" -msgstr "" +#~ msgid "Part can be used in assemblies" +#~ msgstr "" #: src/components/details/PartIcons.tsx:61 -msgid "Part stock is tracked by serial number" -msgstr "" +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "" #: src/components/details/PartIcons.tsx:67 -msgid "Part can be purchased from external suppliers" -msgstr "" +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:73 -msgid "Part can be sold to customers" -msgstr "" +#~ msgid "Part can be sold to customers" +#~ msgstr "" #: src/components/details/PartIcons.tsx:78 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:84 -#: src/tables/part/PartTable.tsx:241 -#: src/tables/part/PartTable.tsx:245 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" #: src/components/editors/NotesEditor.tsx:156 -#: src/components/forms/ApiForm.tsx:437 -#: src/tables/bom/BomTable.tsx:357 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" @@ -417,8 +392,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:151 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -426,18 +400,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "" -#: src/components/forms/ApiForm.tsx:618 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:638 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -591,7 +564,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:123 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -643,7 +616,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "" @@ -659,11 +632,11 @@ msgstr "" msgid "No results found" msgstr "" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -676,114 +649,159 @@ msgstr "" msgid "Thumbnail" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:154 +#: src/components/importer/ImportDataSelector.tsx:155 msgid "Importing Rows" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:155 +#: src/components/importer/ImportDataSelector.tsx:156 msgid "Please wait while the data is imported" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:172 +#: src/components/importer/ImportDataSelector.tsx:173 msgid "An error occurred while importing data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:191 +#: src/components/importer/ImportDataSelector.tsx:194 msgid "Edit Data" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:218 +#: src/components/importer/ImportDataSelector.tsx:222 msgid "Delete Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:248 +#: src/components/importer/ImportDataSelector.tsx:252 msgid "Row" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:266 +#: src/components/importer/ImportDataSelector.tsx:270 msgid "Row contains errors" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:307 +#: src/components/importer/ImportDataSelector.tsx:311 msgid "Accept" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:340 +#: src/components/importer/ImportDataSelector.tsx:344 msgid "Valid" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:341 +#: src/components/importer/ImportDataSelector.tsx:345 msgid "Filter by row validation status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:346 +#: src/components/importer/ImportDataSelector.tsx:350 #: src/tables/build/BuildOutputTable.tsx:205 msgid "Complete" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:347 +#: src/components/importer/ImportDataSelector.tsx:351 msgid "Filter by row completion status" msgstr "" -#: src/components/importer/ImportDataSelector.tsx:364 +#: src/components/importer/ImportDataSelector.tsx:368 msgid "Import selected rows" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:46 -#: src/components/importer/ImporterColumnSelector.tsx:85 +#: src/components/importer/ImportDataSelector.tsx:383 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 msgid "An error occurred" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:57 +#: src/components/importer/ImporterColumnSelector.tsx:62 msgid "Select column, or leave blank to ignore this field." msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:91 -msgid "Select a column from the data file" -msgstr "" +#~ msgid "Select a column from the data file" +#~ msgstr "" #: src/components/importer/ImporterColumnSelector.tsx:104 -msgid "Map data columns to database fields" +#~ msgid "Map data columns to database fields" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:109 +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 msgid "Accept Column Mapping" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:117 +#: src/components/importer/ImporterColumnSelector.tsx:214 msgid "Database Field" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:118 +#: src/components/importer/ImporterColumnSelector.tsx:215 msgid "Field Description" msgstr "" -#: src/components/importer/ImporterColumnSelector.tsx:119 -msgid "Imported Column Name" +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:44 -msgid "Import Data" +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" msgstr "" #: src/components/importer/ImporterDrawer.tsx:45 -msgid "Map Columns" +msgid "Upload File" msgstr "" #: src/components/importer/ImporterDrawer.tsx:46 -msgid "Process Data" +msgid "Map Columns" msgstr "" #: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 msgid "Complete Import" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:91 -msgid "Importing Data" +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" msgstr "" -#: src/components/importer/ImporterDrawer.tsx:97 -msgid "Cancel import session" +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" msgstr "" #: src/components/importer/ImporterImportProgress.tsx:36 @@ -794,51 +812,51 @@ msgstr "" msgid "Imported rows" msgstr "" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -1148,13 +1166,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:314 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:209 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1189,7 +1207,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:168 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1203,25 +1221,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:81 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:98 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:114 -#: src/components/nav/NotificationDrawer.tsx:120 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:143 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1230,50 +1248,52 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:201 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:872 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 #: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 @@ -1287,7 +1307,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:652 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1310,7 +1330,8 @@ msgstr "" #: src/components/render/ModelType.tsx:45 #: src/pages/company/SupplierPartDetail.tsx:192 #: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1337,12 +1358,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:862 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1362,7 +1383,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1401,15 +1422,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1418,146 +1447,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:120 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:348 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:258 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 #: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:586 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:273 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:593 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:289 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 #: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:90 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 msgid "Import Session" msgstr "" -#: src/components/render/ModelType.tsx:201 +#: src/components/render/ModelType.tsx:206 msgid "Import Sessions" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:150 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:215 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:156 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:221 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:222 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1565,32 +1594,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:307 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:503 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:127 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1654,12 +1699,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "" @@ -1968,10 +2007,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "" @@ -2048,138 +2083,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2193,7 +2236,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2260,7 +2303,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2327,7 +2370,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:236 #: src/pages/company/SupplierDetail.tsx:9 #: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:351 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2337,7 +2380,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2497,10 +2540,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "" -#: src/forms/PartForms.tsx:103 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "" @@ -2509,80 +2548,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 #: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:145 +#: src/pages/company/SupplierPartDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:99 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:117 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:134 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2590,7 +2708,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2598,15 +2716,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2614,94 +2732,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:404 -#: src/tables/stock/StockItemTable.tsx:521 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:203 -#: src/pages/part/PartDetail.tsx:668 -#: src/tables/stock/StockItemTable.tsx:312 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:823 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:812 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2767,12 +2873,12 @@ msgstr "" #~ msgstr "" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3178,19 +3284,19 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:96 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 msgid "Data Import" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:102 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:108 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:114 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" @@ -3198,37 +3304,37 @@ msgstr "" #~ msgid "Templates" #~ msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 msgid "Custom Units" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:138 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 #: src/pages/part/CategoryDetail.tsx:257 msgid "Part Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:144 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:162 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:174 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:184 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:189 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:210 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3375,45 +3481,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:606 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:540 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:317 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3445,36 +3550,22 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/settings/ImportSessionTable.tsx:116 -#: src/tables/stock/StockItemTable.tsx:281 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 #: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 #: src/pages/company/ManufacturerPartDetail.tsx:78 #: src/pages/company/SupplierPartDetail.tsx:85 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:130 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 @@ -3491,29 +3582,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:323 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3521,34 +3612,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 +#: src/pages/sales/SalesOrderDetail.tsx:177 #: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3557,7 +3648,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3566,11 +3657,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "" @@ -3583,62 +3669,69 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 #: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:629 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:265 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:637 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:276 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3652,14 +3745,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:319 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3709,7 +3802,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3753,7 +3846,7 @@ msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:71 #: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:77 msgid "Internal Part" msgstr "" @@ -3777,12 +3870,12 @@ msgid "Manufacturer Part Details" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" #: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" @@ -3806,25 +3899,9 @@ msgstr "" msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:132 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - #: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:112 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:153 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" @@ -3846,7 +3923,7 @@ msgid "Supplier Part Details" msgstr "" #: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:252 msgid "Received Stock" msgstr "" @@ -3943,144 +4020,155 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:136 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:143 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:149 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:156 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:163 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:170 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:177 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:184 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:191 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:209 -#: src/tables/bom/BomTable.tsx:279 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:216 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:222 -#: src/tables/bom/BomTable.tsx:220 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:231 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:239 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:246 -#: src/tables/bom/BomTable.tsx:244 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:253 -#: src/tables/bom/BomTable.tsx:228 -#: src/tables/part/PartTable.tsx:83 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:262 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:169 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:272 +#: src/pages/part/PartDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" +msgstr "" + +#: src/pages/part/PartDetail.tsx:291 msgid "Template Part" msgstr "" -#: src/pages/part/PartDetail.tsx:277 -#: src/tables/bom/BomTable.tsx:274 +#: src/pages/part/PartDetail.tsx:296 +#: src/tables/bom/BomTable.tsx:309 msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:282 +#: src/pages/part/PartDetail.tsx:301 msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:287 -#: src/tables/bom/BomTable.tsx:269 +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 msgid "Trackable Part" msgstr "" -#: src/pages/part/PartDetail.tsx:292 -msgid "Purchaseable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:297 -msgid "Saleable Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:302 -msgid "Virtual Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:310 -#: src/tables/ColumnRenderers.tsx:214 -msgid "Creation Date" -msgstr "" - #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:315 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" msgstr "" #: src/pages/part/PartDetail.tsx:322 @@ -4091,130 +4179,143 @@ msgstr "" #~ msgid "Delete part" #~ msgstr "" -#: src/pages/part/PartDetail.tsx:330 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 msgid "Default Supplier" msgstr "" -#: src/pages/part/PartDetail.tsx:341 +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:152 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:380 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:415 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:517 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:524 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:531 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:554 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:600 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:612 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:623 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:674 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:108 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:297 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:680 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:686 -#: src/tables/bom/BomTable.tsx:284 -#: src/tables/part/PartTable.tsx:77 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:692 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:317 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:744 -#: src/tables/part/PartTable.tsx:296 -#: src/tables/part/PartTable.tsx:309 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:758 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:767 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:805 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:431 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:813 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:824 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:833 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartPricingPanel.tsx:72 msgid "No pricing data found for this part." msgstr "" @@ -4256,7 +4357,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 #: src/tables/ColumnRenderers.tsx:256 -#: src/tables/bom/BomTable.tsx:168 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4265,7 +4366,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4294,8 +4395,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:159 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:179 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4364,7 +4465,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4436,26 +4538,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4464,33 +4562,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:309 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4500,6 +4586,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4514,17 +4606,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4589,11 +4681,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4605,15 +4697,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4626,31 +4718,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4658,37 +4750,45 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:436 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:445 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:465 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + #: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" @@ -4796,7 +4896,7 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:126 +#: src/tables/InvenTreeTable.tsx:127 #: src/tables/InvenTreeTable.tsx:409 #: src/tables/InvenTreeTable.tsx:430 msgid "No records found" @@ -4822,28 +4922,28 @@ msgstr "" msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:507 -#: src/tables/InvenTreeTable.tsx:623 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:511 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:513 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:536 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:537 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:546 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -4852,16 +4952,16 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "" -#: src/tables/InvenTreeTable.tsx:613 -#: src/tables/InvenTreeTable.tsx:614 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:642 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:663 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" @@ -4869,128 +4969,81 @@ msgstr "" msgid "Upload Data" msgstr "" -#: src/tables/bom/BomTable.tsx:83 +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:98 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:187 -#: src/tables/part/PartTable.tsx:125 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:195 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:116 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:203 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:212 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:237 -#: src/tables/part/PartTable.tsx:144 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:249 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:270 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:275 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:280 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:285 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:289 -msgid "Validated" -msgstr "" - -#: src/tables/bom/BomTable.tsx:290 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:294 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:295 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:299 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:300 -msgid "Show items which allow variant substitution" +#: src/tables/bom/BomTable.tsx:287 +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:304 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" -msgstr "" - #: src/tables/bom/BomTable.tsx:305 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:309 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +msgid "Show trackable items" msgstr "" #: src/tables/bom/BomTable.tsx:310 -msgid "Show consumable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:314 -#: src/tables/part/PartTable.tsx:257 -msgid "Has Pricing" +msgid "Show asssmbled items" msgstr "" #: src/tables/bom/BomTable.tsx:315 -msgid "Show items with pricing" +msgid "Show items with available stock" +msgstr "" + +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" #: src/tables/bom/BomTable.tsx:324 -#: src/tables/bom/BomTable.tsx:426 -msgid "Add BOM Item" +msgid "Validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" #: src/tables/bom/BomTable.tsx:329 -msgid "BOM item created" +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 @@ -5001,30 +5054,51 @@ msgstr "" #~ msgid "Bom item updated" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:336 -msgid "Edit BOM Item" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" msgstr "" -#: src/tables/bom/BomTable.tsx:338 -msgid "BOM item updated" +#: src/tables/bom/BomTable.tsx:335 +msgid "Show items which allow variant substitution" +msgstr "" + +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" +msgstr "" + +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" msgstr "" #: src/tables/bom/BomTable.tsx:345 -msgid "Delete BOM Item" -msgstr "" - -#: src/tables/bom/BomTable.tsx:346 -msgid "BOM item deleted" +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "" @@ -5033,32 +5107,76 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "" -#: src/tables/bom/BomTable.tsx:358 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:367 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:379 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:388 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:405 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" -#: src/tables/bom/BomTable.tsx:440 +#: src/tables/bom/BomTable.tsx:532 #: src/tables/part/PartParameterTable.tsx:191 msgid "Part is Locked" msgstr "" -#: src/tables/bom/BomTable.tsx:445 +#: src/tables/bom/BomTable.tsx:537 msgid "Bill of materials cannot be edited, as the part is locked" msgstr "" @@ -5067,7 +5185,7 @@ msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5076,8 +5194,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:292 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5098,7 +5245,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:351 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5111,19 +5258,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5227,10 +5382,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5374,81 +5525,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5456,15 +5607,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5539,27 +5690,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 +#: src/tables/part/ParametricPartTable.tsx:77 #: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 +#: src/tables/part/ParametricPartTable.tsx:139 #: src/tables/part/PartParameterTable.tsx:128 #: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5572,7 +5741,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5627,7 +5796,7 @@ msgid "Part parameters cannot be edited, as the part is locked" msgstr "" #: src/tables/part/PartParameterTable.tsx:210 -#: src/tables/stock/StockItemTable.tsx:322 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5648,7 +5817,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5672,120 +5841,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:68 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:90 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:99 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:170 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:176 +#: src/tables/part/PartTable.tsx:185 msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:181 -#: src/tables/stock/StockItemTable.tsx:287 -msgid "Assembly" -msgstr "" - -#: src/tables/part/PartTable.tsx:182 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:188 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:194 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:200 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:206 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:212 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:218 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:224 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:230 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:235 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:236 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:242 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:246 -msgid "Not Virtual" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 msgid "Is Template" msgstr "" -#: src/tables/part/PartTable.tsx:252 +#: src/tables/part/PartTable.tsx:261 msgid "Filter by parts which are templates" msgstr "" -#: src/tables/part/PartTable.tsx:258 +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:264 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:270 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:275 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:276 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6124,7 +6310,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:327 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6177,55 +6363,51 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:91 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:118 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:157 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:164 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:171 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:185 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:207 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:224 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:232 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:243 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:281 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive items" msgstr "" @@ -6378,24 +6560,24 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" @@ -6601,193 +6783,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:247 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 msgid "Stock Value" msgstr "" -#: src/tables/stock/StockItemTable.tsx:277 +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:282 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:288 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:298 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:302 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:303 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:307 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:308 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:313 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:318 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:328 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:332 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:333 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:337 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:338 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:345 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:346 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:352 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:356 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:357 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:365 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:366 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:438 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:469 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:476 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:485 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:494 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:496 -#: src/tables/stock/StockItemTable.tsx:502 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:500 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:509 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:511 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr "" diff --git a/src/frontend/src/locales/zh/messages.po b/src/frontend/src/locales/zh/messages.po index cf6aee64a0..43f7743750 100644 --- a/src/frontend/src/locales/zh/messages.po +++ b/src/frontend/src/locales/zh/messages.po @@ -8,7 +8,7 @@ msgstr "" "Language: zh\n" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"PO-Revision-Date: 2024-07-05 14:58\n" +"PO-Revision-Date: 2024-07-17 16:38\n" "Last-Translator: \n" "Language-Team: Chinese Traditional\n" "Plural-Forms: nplurals=1; plural=0;\n" @@ -38,39 +38,49 @@ msgstr "" msgid "Copy to clipboard" msgstr "" -#: src/components/buttons/PrintingActions.tsx:95 +#: src/components/buttons/PrintingActions.tsx:93 msgid "Print Label" msgstr "" -#: src/components/buttons/PrintingActions.tsx:101 +#: src/components/buttons/PrintingActions.tsx:99 +msgid "Print" +msgstr "" + +#: src/components/buttons/PrintingActions.tsx:100 msgid "Label printing completed successfully" msgstr "" -#: src/components/buttons/PrintingActions.tsx:107 +#: src/components/buttons/PrintingActions.tsx:106 #: src/components/buttons/PrintingActions.tsx:144 #: src/components/editors/NotesEditor.tsx:65 -#: src/components/editors/NotesEditor.tsx:160 -#: src/components/forms/ApiForm.tsx:506 -#: src/components/forms/fields/ApiFormField.tsx:295 +#: src/components/editors/NotesEditor.tsx:165 +#: src/components/forms/ApiForm.tsx:538 +#: src/components/forms/fields/ApiFormField.tsx:321 +#: src/components/importer/ImportDataSelector.tsx:183 +#: src/components/importer/ImporterColumnSelector.tsx:207 #: src/components/modals/LicenseModal.tsx:75 -#: src/components/nav/SearchDrawer.tsx:427 +#: src/components/nav/SearchDrawer.tsx:426 #: src/pages/ErrorPage.tsx:11 #: src/pages/part/PartPricingPanel.tsx:71 -#: src/tables/InvenTreeTable.tsx:451 -#: src/tables/InvenTreeTable.tsx:526 -#: src/tables/bom/BomTable.tsx:363 +#: src/tables/InvenTreeTable.tsx:470 +#: src/tables/InvenTreeTable.tsx:544 +#: src/tables/bom/BomTable.tsx:444 #: src/tables/stock/StockItemTestResultTable.tsx:294 msgid "Error" msgstr "" -#: src/components/buttons/PrintingActions.tsx:108 +#: src/components/buttons/PrintingActions.tsx:107 msgid "The label could not be generated" msgstr "" -#: src/components/buttons/PrintingActions.tsx:123 +#: src/components/buttons/PrintingActions.tsx:122 msgid "Print Report" msgstr "" +#: src/components/buttons/PrintingActions.tsx:138 +msgid "Generate" +msgstr "" + #: src/components/buttons/PrintingActions.tsx:139 msgid "Report printing completed successfully" msgstr "" @@ -111,25 +121,25 @@ msgstr "" msgid "Fail" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:51 msgid "Yes" msgstr "" -#: src/components/buttons/YesNoButton.tsx:32 +#: src/components/buttons/YesNoButton.tsx:33 #: src/tables/Filter.tsx:52 msgid "No" msgstr "" -#: src/components/details/Details.tsx:305 +#: src/components/details/Details.tsx:294 msgid "No name defined" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copied" msgstr "" -#: src/components/details/Details.tsx:342 +#: src/components/details/Details.tsx:331 msgid "Copy" msgstr "" @@ -142,22 +152,21 @@ msgid "Remove the associated image from this item?" msgstr "" #: src/components/details/DetailsImage.tsx:71 -#: src/forms/StockForms.tsx:483 +#: src/forms/StockForms.tsx:535 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:192 #: src/pages/Index/Settings/AccountSettings/SecurityContent.tsx:299 -#: src/pages/stock/StockDetail.tsx:466 +#: src/pages/stock/StockDetail.tsx:465 msgid "Remove" msgstr "" #: src/components/details/DetailsImage.tsx:71 #: src/components/editors/TemplateEditor/TemplateEditor.tsx:158 -#: src/components/items/ActionDropdown.tsx:229 -#: src/components/items/ActionDropdown.tsx:230 +#: src/components/items/ActionDropdown.tsx:231 +#: src/components/items/ActionDropdown.tsx:232 #: src/contexts/ThemeContext.tsx:43 -#: src/functions/forms.tsx:196 #: src/hooks/UseForm.tsx:40 #: src/tables/FilterSelectDrawer.tsx:204 -#: src/tables/InvenTreeTable.tsx:499 +#: src/tables/InvenTreeTable.tsx:517 #: src/tables/build/BuildOutputTable.tsx:225 msgid "Cancel" msgstr "取消" @@ -175,7 +184,7 @@ msgid "Clear" msgstr "" #: src/components/details/DetailsImage.tsx:227 -#: src/components/forms/ApiForm.tsx:573 +#: src/components/forms/ApiForm.tsx:607 #: src/contexts/ThemeContext.tsx:43 #: src/pages/Index/Settings/AccountSettings/AccountDetailPanel.tsx:56 msgid "Submit" @@ -201,80 +210,61 @@ msgstr "上傳圖片" msgid "Delete image" msgstr "刪除圖片" -#: src/components/details/PartIcons.tsx:28 -msgid "Part is not active" -msgstr "" +#: src/components/details/PartIcons.tsx:43 +#~ msgid "Part is a template part (variants can be made from this part)" +#~ msgstr "Part is a template part (variants can be made from this part)" -#: src/components/details/PartIcons.tsx:34 -#: src/components/render/Plugin.tsx:17 -#: src/pages/company/CompanyDetail.tsx:315 -#: src/pages/company/SupplierPartDetail.tsx:307 -#: src/pages/part/PartDetail.tsx:685 -msgid "Inactive" -msgstr "" +#: src/components/details/PartIcons.tsx:49 +#~ msgid "Part can be assembled from other parts" +#~ msgstr "Part can be assembled from other parts" -#: src/components/details/PartIcons.tsx:41 -msgid "Part is a template part (variants can be made from this part)" -msgstr "" +#: src/components/details/PartIcons.tsx:55 +#~ msgid "Part can be used in assemblies" +#~ msgstr "Part can be used in assemblies" -#: src/components/details/PartIcons.tsx:47 -msgid "Part can be assembled from other parts" -msgstr "" +#: src/components/details/PartIcons.tsx:61 +#~ msgid "Part stock is tracked by serial number" +#~ msgstr "Part stock is tracked by serial number" -#: src/components/details/PartIcons.tsx:53 -msgid "Part can be used in assemblies" -msgstr "" +#: src/components/details/PartIcons.tsx:67 +#~ msgid "Part can be purchased from external suppliers" +#~ msgstr "Part can be purchased from external suppliers" -#: src/components/details/PartIcons.tsx:59 -msgid "Part stock is tracked by serial number" -msgstr "" +#: src/components/details/PartIcons.tsx:73 +#~ msgid "Part can be sold to customers" +#~ msgstr "Part can be sold to customers" -#: src/components/details/PartIcons.tsx:65 -msgid "Part can be purchased from external suppliers" -msgstr "" - -#: src/components/details/PartIcons.tsx:71 -msgid "Part can be sold to customers" -msgstr "" - -#: src/components/details/PartIcons.tsx:76 -msgid "Part is virtual (not a physical part)" -msgstr "" - -#: src/components/details/PartIcons.tsx:82 -#: src/tables/part/PartTable.tsx:234 -#: src/tables/part/PartTable.tsx:238 -#: src/tables/part/PartVariantTable.tsx:25 -msgid "Virtual" -msgstr "" +#: src/components/details/PartIcons.tsx:78 +#~ msgid "Part is virtual (not a physical part)" +#~ msgstr "Part is virtual (not a physical part)" #: src/components/editors/NotesEditor.tsx:66 msgid "Image upload failed" msgstr "" -#: src/components/editors/NotesEditor.tsx:151 -#: src/components/forms/ApiForm.tsx:430 -#: src/tables/bom/BomTable.tsx:354 +#: src/components/editors/NotesEditor.tsx:156 +#: src/components/forms/ApiForm.tsx:458 +#: src/tables/bom/BomTable.tsx:435 msgid "Success" msgstr "" -#: src/components/editors/NotesEditor.tsx:152 +#: src/components/editors/NotesEditor.tsx:157 msgid "Notes saved successfully" msgstr "" -#: src/components/editors/NotesEditor.tsx:161 +#: src/components/editors/NotesEditor.tsx:166 msgid "Failed to save notes" msgstr "" -#: src/components/editors/NotesEditor.tsx:193 +#: src/components/editors/NotesEditor.tsx:198 msgid "Preview Notes" msgstr "" -#: src/components/editors/NotesEditor.tsx:193 +#: src/components/editors/NotesEditor.tsx:198 msgid "Edit Notes" msgstr "" -#: src/components/editors/NotesEditor.tsx:207 +#: src/components/editors/NotesEditor.tsx:212 msgid "Save Notes" msgstr "" @@ -407,8 +397,7 @@ msgstr "" msgid "A server error occurred" msgstr "" -#: src/components/forms/ApiForm.tsx:149 -#: src/functions/forms.tsx:259 +#: src/components/forms/ApiForm.tsx:150 msgid "Form Error" msgstr "" @@ -416,18 +405,17 @@ msgstr "" #~ msgid "Form Errors Exist" #~ msgstr "Form Errors Exist" -#: src/components/forms/ApiForm.tsx:611 +#: src/components/forms/ApiForm.tsx:645 #: src/tables/plugin/PluginListTable.tsx:388 msgid "Update" msgstr "" -#: src/components/forms/ApiForm.tsx:631 -#: src/components/items/ActionDropdown.tsx:210 -#: src/functions/forms.tsx:299 +#: src/components/forms/ApiForm.tsx:665 +#: src/components/items/ActionDropdown.tsx:212 #: src/hooks/UseForm.tsx:122 #: src/pages/Index/Scan.tsx:343 #: src/pages/Notifications.tsx:123 -#: src/tables/InvenTreeTable.tsx:498 +#: src/tables/InvenTreeTable.tsx:516 #: src/tables/RowActions.tsx:71 #: src/tables/plugin/PluginListTable.tsx:420 msgid "Delete" @@ -462,7 +450,7 @@ msgstr "" #: src/components/forms/AuthenticationForm.tsx:59 #: src/components/forms/AuthenticationForm.tsx:76 #: src/components/forms/AuthenticationForm.tsx:211 -#: src/functions/auth.tsx:165 +#: src/functions/auth.tsx:164 msgid "Check your input and try again." msgstr "" @@ -472,7 +460,7 @@ msgstr "" #~ msgstr "Mail delivery successfull" #: src/components/forms/AuthenticationForm.tsx:70 -#: src/functions/auth.tsx:156 +#: src/functions/auth.tsx:155 msgid "Mail delivery successful" msgstr "" @@ -600,7 +588,7 @@ msgstr "" #: src/components/forms/HostOptionsForm.tsx:42 #: src/components/forms/HostOptionsForm.tsx:70 #: src/pages/part/CategoryDetail.tsx:80 -#: src/pages/part/PartDetail.tsx:122 +#: src/pages/part/PartDetail.tsx:127 #: src/pages/stock/LocationDetail.tsx:87 #: src/tables/machine/MachineTypeTable.tsx:65 #: src/tables/machine/MachineTypeTable.tsx:109 @@ -652,7 +640,7 @@ msgid "State: <0>worker ({0}), <1>plugins{1}" msgstr "" #: src/components/forms/fields/RelatedModelField.tsx:320 -#: src/pages/Index/Settings/UserSettings.tsx:66 +#: src/pages/Index/Settings/UserSettings.tsx:71 #: src/tables/Search.tsx:23 msgid "Search" msgstr "搜尋" @@ -668,11 +656,11 @@ msgstr "" msgid "No results found" msgstr "找不到結果" -#: src/components/forms/fields/TableField.tsx:50 +#: src/components/forms/fields/TableField.tsx:52 msgid "modelRenderer entry required for tables" msgstr "" -#: src/components/forms/fields/TableField.tsx:74 +#: src/components/forms/fields/TableField.tsx:76 msgid "No entries available" msgstr "" @@ -685,51 +673,214 @@ msgstr "" msgid "Thumbnail" msgstr "縮圖" -#: src/components/items/ActionDropdown.tsx:119 -#: src/pages/build/BuildDetail.tsx:358 +#: src/components/importer/ImportDataSelector.tsx:166 +msgid "Importing Rows" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:167 +msgid "Please wait while the data is imported" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:184 +msgid "An error occurred while importing data" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:205 +msgid "Edit Data" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:233 +msgid "Delete Row" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:263 +msgid "Row" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:281 +msgid "Row contains errors" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:322 +msgid "Accept" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:355 +msgid "Valid" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:356 +msgid "Filter by row validation status" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:361 +#: src/tables/build/BuildOutputTable.tsx:205 +msgid "Complete" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:362 +msgid "Filter by row completion status" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:379 +msgid "Import selected rows" +msgstr "" + +#: src/components/importer/ImportDataSelector.tsx:394 +msgid "Processing Data" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:50 +#: src/components/importer/ImporterColumnSelector.tsx:176 +msgid "An error occurred" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:62 +msgid "Select column, or leave blank to ignore this field." +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:91 +#~ msgid "Select a column from the data file" +#~ msgstr "Select a column from the data file" + +#: src/components/importer/ImporterColumnSelector.tsx:104 +#~ msgid "Map data columns to database fields" +#~ msgstr "Map data columns to database fields" + +#: src/components/importer/ImporterColumnSelector.tsx:119 +#~ msgid "Imported Column Name" +#~ msgstr "Imported Column Name" + +#: src/components/importer/ImporterColumnSelector.tsx:182 +msgid "Ignore this field" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:196 +msgid "Mapping data columns to database fields" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:201 +msgid "Accept Column Mapping" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:214 +msgid "Database Field" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:215 +msgid "Field Description" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:216 +msgid "Imported Column" +msgstr "" + +#: src/components/importer/ImporterColumnSelector.tsx:217 +msgid "Default Value" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:45 +msgid "Upload File" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:46 +msgid "Map Columns" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:47 +msgid "Import Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:48 +msgid "Process Data" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:49 +msgid "Complete Import" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:97 +#~ msgid "Cancel import session" +#~ msgstr "Cancel import session" + +#: src/components/importer/ImporterDrawer.tsx:101 +msgid "Import Complete" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:104 +msgid "Data has been imported successfully" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:106 +#: src/components/importer/ImporterDrawer.tsx:115 +msgid "Close" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:112 +msgid "Unknown Status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:113 +msgid "Import session has unknown status" +msgstr "" + +#: src/components/importer/ImporterDrawer.tsx:132 +msgid "Importing Data" +msgstr "" + +#: src/components/importer/ImporterImportProgress.tsx:36 +msgid "Importing Records" +msgstr "" + +#: src/components/importer/ImporterImportProgress.tsx:39 +msgid "Imported rows" +msgstr "" + +#: src/components/items/ActionDropdown.tsx:121 +#: src/pages/build/BuildDetail.tsx:370 msgid "Barcode Actions" msgstr "" -#: src/components/items/ActionDropdown.tsx:136 +#: src/components/items/ActionDropdown.tsx:138 msgid "View" msgstr "" -#: src/components/items/ActionDropdown.tsx:137 +#: src/components/items/ActionDropdown.tsx:139 msgid "View barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:153 +#: src/components/items/ActionDropdown.tsx:155 msgid "Link Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:154 +#: src/components/items/ActionDropdown.tsx:156 msgid "Link custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:170 -#: src/forms/PurchaseOrderForms.tsx:389 +#: src/components/items/ActionDropdown.tsx:172 +#: src/forms/PurchaseOrderForms.tsx:426 msgid "Unlink Barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:171 +#: src/components/items/ActionDropdown.tsx:173 msgid "Unlink custom barcode" msgstr "" -#: src/components/items/ActionDropdown.tsx:189 +#: src/components/items/ActionDropdown.tsx:191 #: src/tables/RowActions.tsx:51 msgid "Edit" msgstr "" -#: src/components/items/ActionDropdown.tsx:211 +#: src/components/items/ActionDropdown.tsx:213 msgid "Delete item" msgstr "" -#: src/components/items/ActionDropdown.tsx:248 +#: src/components/items/ActionDropdown.tsx:250 #: src/tables/RowActions.tsx:31 msgid "Duplicate" msgstr "" -#: src/components/items/ActionDropdown.tsx:249 +#: src/components/items/ActionDropdown.tsx:251 msgid "Duplicate item" msgstr "" @@ -738,7 +889,7 @@ msgid "Read More" msgstr "" #: src/components/items/ErrorItem.tsx:5 -#: src/tables/InvenTreeTable.tsx:443 +#: src/tables/InvenTreeTable.tsx:462 msgid "Unknown error" msgstr "" @@ -1039,13 +1190,13 @@ msgstr "" #: src/components/nav/MainMenu.tsx:57 #: src/defaults/menuItems.tsx:58 -#: src/pages/Index/Settings/SystemSettings.tsx:313 +#: src/pages/Index/Settings/SystemSettings.tsx:319 msgid "System Settings" msgstr "" #: src/components/nav/MainMenu.tsx:67 #: src/defaults/menuItems.tsx:63 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:198 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:221 msgid "Admin Center" msgstr "" @@ -1088,7 +1239,7 @@ msgid "Pages" msgstr "" #: src/components/nav/NavigationDrawer.tsx:65 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:157 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:176 #: src/pages/Index/Settings/AdminCenter/PluginManagementPanel.tsx:41 msgid "Plugins" msgstr "" @@ -1102,25 +1253,25 @@ msgstr "" msgid "About" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:78 +#: src/components/nav/NotificationDrawer.tsx:80 #: src/pages/Index/Settings/SystemSettings.tsx:108 -#: src/pages/Index/Settings/UserSettings.tsx:96 +#: src/pages/Index/Settings/UserSettings.tsx:101 #: src/pages/Notifications.tsx:65 #: src/pages/Notifications.tsx:152 msgid "Notifications" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:95 +#: src/components/nav/NotificationDrawer.tsx:97 msgid "You have no unread notifications." msgstr "" -#: src/components/nav/NotificationDrawer.tsx:111 -#: src/components/nav/NotificationDrawer.tsx:117 +#: src/components/nav/NotificationDrawer.tsx:113 +#: src/components/nav/NotificationDrawer.tsx:119 #: src/tables/notifications/NotificationsTable.tsx:36 msgid "Notification" msgstr "" -#: src/components/nav/NotificationDrawer.tsx:140 +#: src/components/nav/NotificationDrawer.tsx:142 #: src/pages/Notifications.tsx:73 msgid "Mark as read" msgstr "" @@ -1129,50 +1280,53 @@ msgstr "" msgid "results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:349 +#: src/components/nav/SearchDrawer.tsx:348 msgid "Enter search text" msgstr "" -#: src/components/nav/SearchDrawer.tsx:376 +#: src/components/nav/SearchDrawer.tsx:375 msgid "Search Options" msgstr "" -#: src/components/nav/SearchDrawer.tsx:379 +#: src/components/nav/SearchDrawer.tsx:378 msgid "Regex search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:389 +#: src/components/nav/SearchDrawer.tsx:388 msgid "Whole word search" msgstr "" -#: src/components/nav/SearchDrawer.tsx:430 +#: src/components/nav/SearchDrawer.tsx:429 msgid "An error occurred during search query" msgstr "" -#: src/components/nav/SearchDrawer.tsx:441 +#: src/components/nav/SearchDrawer.tsx:440 msgid "No results" msgstr "" -#: src/components/nav/SearchDrawer.tsx:444 +#: src/components/nav/SearchDrawer.tsx:443 msgid "No results available for search query" msgstr "" -#: src/components/render/Instance.tsx:166 +#: src/components/render/Instance.tsx:209 msgid "Unknown model: {model}" msgstr "" #: src/components/render/ModelType.tsx:22 #: src/forms/BuildForms.tsx:201 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/build/BuildDetail.tsx:85 -#: src/pages/part/PartDetail.tsx:831 +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/build/BuildDetail.tsx:87 +#: src/pages/part/PartDetail.tsx:982 +#: src/tables/build/BuildAllocatedStockTable.tsx:45 +#: src/tables/part/PartTable.tsx:28 #: src/tables/part/RelatedPartTable.tsx:45 #: src/tables/stock/StockTrackingTable.tsx:74 msgid "Part" @@ -1185,7 +1339,7 @@ msgstr "" #: src/pages/part/CategoryDetail.tsx:112 #: src/pages/part/CategoryDetail.tsx:237 #: src/pages/part/CategoryDetail.tsx:267 -#: src/pages/part/PartDetail.tsx:639 +#: src/pages/part/PartDetail.tsx:747 msgid "Parts" msgstr "" @@ -1206,9 +1360,10 @@ msgid "Part Test Templates" msgstr "" #: src/components/render/ModelType.tsx:45 -#: src/pages/company/SupplierPartDetail.tsx:192 -#: src/pages/company/SupplierPartDetail.tsx:320 -#: src/pages/stock/StockDetail.tsx:165 +#: src/pages/company/SupplierPartDetail.tsx:194 +#: src/pages/company/SupplierPartDetail.tsx:334 +#: src/pages/stock/StockDetail.tsx:164 +#: src/tables/build/BuildAllocatedStockTable.tsx:93 #: src/tables/purchasing/SupplierPartTable.tsx:68 msgid "Supplier Part" msgstr "" @@ -1218,7 +1373,7 @@ msgid "Supplier Parts" msgstr "" #: src/components/render/ModelType.tsx:54 -#: src/pages/company/ManufacturerPartDetail.tsx:127 +#: src/pages/company/ManufacturerPartDetail.tsx:129 msgid "Manufacturer Part" msgstr "" @@ -1235,12 +1390,12 @@ msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:172 #: src/pages/part/CategoryDetail.tsx:251 #: src/pages/part/CategoryDetail.tsx:288 -#: src/pages/part/PartDetail.tsx:821 +#: src/pages/part/PartDetail.tsx:972 msgid "Part Categories" msgstr "" #: src/components/render/ModelType.tsx:72 -#: src/pages/stock/StockDetail.tsx:564 +#: src/pages/stock/StockDetail.tsx:563 #: src/tables/stock/StockTrackingTable.tsx:45 msgid "Stock Item" msgstr "" @@ -1260,7 +1415,7 @@ msgstr "" #: src/components/render/ModelType.tsx:82 #: src/pages/stock/LocationDetail.tsx:187 #: src/pages/stock/LocationDetail.tsx:366 -#: src/pages/stock/StockDetail.tsx:556 +#: src/pages/stock/StockDetail.tsx:555 msgid "Stock Locations" msgstr "" @@ -1299,15 +1454,23 @@ msgid "Build Lines" msgstr "" #: src/components/render/ModelType.tsx:117 +msgid "Build Item" +msgstr "" + +#: src/components/render/ModelType.tsx:118 +msgid "Build Items" +msgstr "" + +#: src/components/render/ModelType.tsx:122 #: src/pages/company/CompanyDetail.tsx:328 msgid "Company" msgstr "" -#: src/components/render/ModelType.tsx:118 +#: src/components/render/ModelType.tsx:123 msgid "Companies" msgstr "" -#: src/components/render/ModelType.tsx:126 +#: src/components/render/ModelType.tsx:131 #: src/tables/TableHoverCard.tsx:58 #: src/tables/build/BuildOrderTable.tsx:131 #: src/tables/purchasing/PurchaseOrderTable.tsx:64 @@ -1316,137 +1479,146 @@ msgstr "" msgid "Project Code" msgstr "" -#: src/components/render/ModelType.tsx:127 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:109 +#: src/components/render/ModelType.tsx:132 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:128 msgid "Project Codes" msgstr "" -#: src/components/render/ModelType.tsx:133 +#: src/components/render/ModelType.tsx:138 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:32 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:362 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:349 #: src/tables/stock/StockTrackingTable.tsx:107 msgid "Purchase Order" msgstr "" -#: src/components/render/ModelType.tsx:134 -#: src/pages/Index/Settings/SystemSettings.tsx:257 +#: src/components/render/ModelType.tsx:139 +#: src/pages/Index/Settings/SystemSettings.tsx:259 #: src/pages/company/CompanyDetail.tsx:194 -#: src/pages/company/SupplierPartDetail.tsx:226 -#: src/pages/part/PartDetail.tsx:573 +#: src/pages/company/SupplierPartDetail.tsx:228 +#: src/pages/part/PartDetail.tsx:598 #: src/pages/purchasing/PurchasingIndex.tsx:20 msgid "Purchase Orders" msgstr "" -#: src/components/render/ModelType.tsx:142 +#: src/components/render/ModelType.tsx:147 msgid "Purchase Order Line" msgstr "" -#: src/components/render/ModelType.tsx:143 +#: src/components/render/ModelType.tsx:148 msgid "Purchase Order Lines" msgstr "" -#: src/components/render/ModelType.tsx:147 -#: src/pages/build/BuildDetail.tsx:133 -#: src/pages/sales/SalesOrderDetail.tsx:351 -#: src/pages/stock/StockDetail.tsx:213 +#: src/components/render/ModelType.tsx:152 +#: src/pages/build/BuildDetail.tsx:135 +#: src/pages/sales/SalesOrderDetail.tsx:345 +#: src/pages/stock/StockDetail.tsx:212 #: src/tables/stock/StockTrackingTable.tsx:118 msgid "Sales Order" msgstr "" -#: src/components/render/ModelType.tsx:148 -#: src/pages/Index/Settings/SystemSettings.tsx:272 +#: src/components/render/ModelType.tsx:153 +#: src/pages/Index/Settings/SystemSettings.tsx:274 #: src/pages/company/CompanyDetail.tsx:214 -#: src/pages/part/PartDetail.tsx:580 +#: src/pages/part/PartDetail.tsx:605 #: src/pages/sales/SalesIndex.tsx:21 msgid "Sales Orders" msgstr "" -#: src/components/render/ModelType.tsx:156 +#: src/components/render/ModelType.tsx:161 msgid "Sales Order Shipment" msgstr "" -#: src/components/render/ModelType.tsx:157 +#: src/components/render/ModelType.tsx:162 msgid "Sales Order Shipments" msgstr "" -#: src/components/render/ModelType.tsx:163 +#: src/components/render/ModelType.tsx:168 #: src/pages/sales/ReturnOrderDetail.tsx:327 #: src/tables/stock/StockTrackingTable.tsx:129 msgid "Return Order" msgstr "" -#: src/components/render/ModelType.tsx:164 -#: src/pages/Index/Settings/SystemSettings.tsx:288 +#: src/components/render/ModelType.tsx:169 +#: src/pages/Index/Settings/SystemSettings.tsx:290 #: src/pages/company/CompanyDetail.tsx:221 #: src/pages/sales/SalesIndex.tsx:27 msgid "Return Orders" msgstr "" -#: src/components/render/ModelType.tsx:172 +#: src/components/render/ModelType.tsx:177 #: src/tables/company/AddressTable.tsx:47 msgid "Address" msgstr "" -#: src/components/render/ModelType.tsx:173 +#: src/components/render/ModelType.tsx:178 #: src/pages/company/CompanyDetail.tsx:251 msgid "Addresses" msgstr "" -#: src/components/render/ModelType.tsx:179 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:192 +#: src/components/render/ModelType.tsx:184 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:178 #: src/pages/sales/ReturnOrderDetail.tsx:161 -#: src/pages/sales/SalesOrderDetail.tsx:165 +#: src/pages/sales/SalesOrderDetail.tsx:159 msgid "Contact" msgstr "" -#: src/components/render/ModelType.tsx:180 +#: src/components/render/ModelType.tsx:185 #: src/pages/company/CompanyDetail.tsx:245 msgid "Contacts" msgstr "" -#: src/components/render/ModelType.tsx:186 +#: src/components/render/ModelType.tsx:191 msgid "Owner" msgstr "" -#: src/components/render/ModelType.tsx:187 +#: src/components/render/ModelType.tsx:192 msgid "Owners" msgstr "" -#: src/components/render/ModelType.tsx:193 +#: src/components/render/ModelType.tsx:198 +#: src/tables/settings/ImportSessionTable.tsx:122 #: src/tables/stock/StockItemTestResultTable.tsx:193 #: src/tables/stock/StockTrackingTable.tsx:195 msgid "User" msgstr "" -#: src/components/render/ModelType.tsx:194 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:85 +#: src/components/render/ModelType.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:98 #: src/pages/Index/Settings/AdminCenter/UserManagementPanel.tsx:13 msgid "Users" msgstr "" -#: src/components/render/ModelType.tsx:200 +#: src/components/render/ModelType.tsx:205 +msgid "Import Session" +msgstr "" + +#: src/components/render/ModelType.tsx:206 +msgid "Import Sessions" +msgstr "" + +#: src/components/render/ModelType.tsx:212 msgid "Label Template" msgstr "" -#: src/components/render/ModelType.tsx:201 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:139 +#: src/components/render/ModelType.tsx:213 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:158 msgid "Label Templates" msgstr "" -#: src/components/render/ModelType.tsx:207 +#: src/components/render/ModelType.tsx:219 msgid "Report Template" msgstr "" -#: src/components/render/ModelType.tsx:208 -#: src/pages/Index/Settings/AdminCenter/Index.tsx:145 +#: src/components/render/ModelType.tsx:220 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:164 msgid "Report Templates" msgstr "" -#: src/components/render/ModelType.tsx:214 +#: src/components/render/ModelType.tsx:226 msgid "Plugin Configuration" msgstr "" -#: src/components/render/ModelType.tsx:215 +#: src/components/render/ModelType.tsx:227 msgid "Plugin Configurations" msgstr "" @@ -1454,32 +1626,48 @@ msgstr "" msgid "Shipment" msgstr "" -#: src/components/render/Part.tsx:15 +#: src/components/render/Part.tsx:24 +#: src/components/render/Plugin.tsx:17 +#: src/pages/company/CompanyDetail.tsx:315 +#: src/pages/company/SupplierPartDetail.tsx:321 +#: src/pages/part/PartDetail.tsx:799 +msgid "Inactive" +msgstr "" + +#: src/components/render/Part.tsx:27 +#: src/tables/bom/BomTable.tsx:203 +#: src/tables/part/PartTable.tsx:134 +msgid "No stock" +msgstr "" + +#: src/components/render/Part.tsx:29 #: src/defaults/links.tsx:29 #: src/defaults/menuItems.tsx:38 -#: src/pages/Index/Settings/SystemSettings.tsx:210 -#: src/pages/part/PartDetail.tsx:492 +#: src/pages/Index/Settings/SystemSettings.tsx:211 +#: src/pages/part/PartDetail.tsx:515 #: src/pages/stock/LocationDetail.tsx:347 -#: src/pages/stock/StockDetail.tsx:356 -#: src/tables/stock/StockItemTable.tsx:57 +#: src/pages/stock/StockDetail.tsx:355 +#: src/tables/stock/StockItemTable.tsx:67 msgid "Stock" msgstr "" #: src/components/render/Stock.tsx:52 -#: src/pages/stock/StockDetail.tsx:148 -#: src/pages/stock/StockDetail.tsx:521 +#: src/pages/stock/StockDetail.tsx:147 +#: src/pages/stock/StockDetail.tsx:520 +#: src/tables/build/BuildAllocatedStockTable.tsx:64 msgid "Serial Number" msgstr "" #: src/components/render/Stock.tsx:54 #: src/forms/BuildForms.tsx:206 +#: src/forms/PurchaseOrderForms.tsx:639 #: src/pages/part/pricing/BomPricingPanel.tsx:108 #: src/pages/part/pricing/PriceBreakPanel.tsx:85 #: src/pages/part/pricing/PriceBreakPanel.tsx:167 -#: src/pages/stock/StockDetail.tsx:143 -#: src/pages/stock/StockDetail.tsx:527 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:94 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:122 +#: src/pages/stock/StockDetail.tsx:142 +#: src/pages/stock/StockDetail.tsx:526 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:147 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:175 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:73 #: src/tables/stock/StockTrackingTable.tsx:59 msgid "Quantity" @@ -1543,12 +1731,6 @@ msgstr "" #~ msgid "Substitutes" #~ msgstr "Substitutes" -#: src/components/tables/bom/BomTable.tsx:139 -#: src/components/tables/bom/BomTable.tsx:265 -#: src/components/tables/bom/UsedInTable.tsx:64 -#~ msgid "Gets Inherited" -#~ msgstr "Gets Inherited" - #: src/components/tables/bom/BomTable.tsx:200 #~ msgid "Validate" #~ msgstr "Validate" @@ -1641,10 +1823,6 @@ msgstr "" #~ msgid "Comment" #~ msgstr "Comment" -#: src/components/tables/general/AttachmentTable.tsx:56 -#~ msgid "Uploaded" -#~ msgstr "Uploaded" - #: src/components/tables/part/PartCategoryTable.tsx:122 #~ msgid "Part category updated" #~ msgstr "Part category updated" @@ -1865,10 +2043,6 @@ msgstr "" #~ msgid "Superuser" #~ msgstr "Superuser" -#: src/components/tables/stock/StockItemTable.tsx:198 -#~ msgid "Expiry Date" -#~ msgstr "Expiry Date" - #: src/components/tables/stock/StockItemTable.tsx:247 #~ msgid "Test Filter" #~ msgstr "Test Filter" @@ -1945,138 +2119,146 @@ msgid "Show Boxes" msgstr "" #: src/contexts/LanguageContext.tsx:20 -msgid "Bulgarian" +msgid "Arabic" msgstr "" #: src/contexts/LanguageContext.tsx:21 -msgid "Czech" +msgid "Bulgarian" msgstr "" #: src/contexts/LanguageContext.tsx:22 -msgid "Danish" +msgid "Czech" msgstr "" #: src/contexts/LanguageContext.tsx:23 -msgid "German" +msgid "Danish" msgstr "" #: src/contexts/LanguageContext.tsx:24 -msgid "Greek" +msgid "German" msgstr "" #: src/contexts/LanguageContext.tsx:25 -msgid "English" +msgid "Greek" msgstr "" #: src/contexts/LanguageContext.tsx:26 -msgid "Spanish" +msgid "English" msgstr "" #: src/contexts/LanguageContext.tsx:27 -msgid "Spanish (Mexican)" +msgid "Spanish" msgstr "" #: src/contexts/LanguageContext.tsx:28 -msgid "Farsi / Persian" +msgid "Spanish (Mexican)" msgstr "" #: src/contexts/LanguageContext.tsx:29 -msgid "Finnish" +msgid "Estonian" msgstr "" #: src/contexts/LanguageContext.tsx:30 -msgid "French" +msgid "Farsi / Persian" msgstr "" #: src/contexts/LanguageContext.tsx:31 -msgid "Hebrew" +msgid "Finnish" msgstr "" #: src/contexts/LanguageContext.tsx:32 -msgid "Hindi" +msgid "French" msgstr "" #: src/contexts/LanguageContext.tsx:33 -msgid "Hungarian" +msgid "Hebrew" msgstr "" #: src/contexts/LanguageContext.tsx:34 -msgid "Italian" +msgid "Hindi" msgstr "" #: src/contexts/LanguageContext.tsx:35 -msgid "Japanese" +msgid "Hungarian" msgstr "" #: src/contexts/LanguageContext.tsx:36 -msgid "Korean" +msgid "Italian" msgstr "" #: src/contexts/LanguageContext.tsx:37 -msgid "Latvian" +msgid "Japanese" msgstr "" #: src/contexts/LanguageContext.tsx:38 -msgid "Dutch" +msgid "Korean" msgstr "" #: src/contexts/LanguageContext.tsx:39 -msgid "Norwegian" +msgid "Latvian" msgstr "" #: src/contexts/LanguageContext.tsx:40 -msgid "Polish" +msgid "Dutch" msgstr "" #: src/contexts/LanguageContext.tsx:41 -msgid "Portuguese" +msgid "Norwegian" msgstr "" #: src/contexts/LanguageContext.tsx:42 -msgid "Portuguese (Brazilian)" +msgid "Polish" msgstr "" #: src/contexts/LanguageContext.tsx:43 -msgid "Romanian" +msgid "Portuguese" msgstr "" #: src/contexts/LanguageContext.tsx:44 -msgid "Russian" +msgid "Portuguese (Brazilian)" msgstr "" #: src/contexts/LanguageContext.tsx:45 -msgid "Slovak" +msgid "Romanian" msgstr "" #: src/contexts/LanguageContext.tsx:46 -msgid "Slovenian" +msgid "Russian" msgstr "" #: src/contexts/LanguageContext.tsx:47 -msgid "Swedish" +msgid "Slovak" msgstr "" #: src/contexts/LanguageContext.tsx:48 -msgid "Thai" +msgid "Slovenian" msgstr "" #: src/contexts/LanguageContext.tsx:49 -msgid "Turkish" +msgid "Swedish" msgstr "" #: src/contexts/LanguageContext.tsx:50 -msgid "Ukrainian" +msgid "Thai" msgstr "" #: src/contexts/LanguageContext.tsx:51 -msgid "Vietnamese" +msgid "Turkish" msgstr "" #: src/contexts/LanguageContext.tsx:52 -msgid "Chinese (Simplified)" +msgid "Ukrainian" msgstr "" #: src/contexts/LanguageContext.tsx:53 +msgid "Vietnamese" +msgstr "" + +#: src/contexts/LanguageContext.tsx:54 +msgid "Chinese (Simplified)" +msgstr "" + +#: src/contexts/LanguageContext.tsx:55 msgid "Chinese (Traditional)" msgstr "" @@ -2090,7 +2272,7 @@ msgstr "" #: src/defaults/links.tsx:27 #: src/defaults/menuItems.tsx:28 #: src/pages/Index/Dashboard.tsx:19 -#: src/pages/Index/Settings/UserSettings.tsx:42 +#: src/pages/Index/Settings/UserSettings.tsx:47 msgid "Dashboard" msgstr "" @@ -2157,7 +2339,7 @@ msgid "Recently Updated" msgstr "" #: src/defaults/dashboardItems.tsx:50 -#: src/tables/part/PartTable.tsx:216 +#: src/tables/part/PartTable.tsx:232 msgid "Low Stock" msgstr "" @@ -2229,10 +2411,10 @@ msgstr "" #: src/defaults/links.tsx:31 #: src/defaults/menuItems.tsx:48 #: src/pages/company/ManufacturerDetail.tsx:9 -#: src/pages/company/ManufacturerPartDetail.tsx:236 +#: src/pages/company/ManufacturerPartDetail.tsx:250 #: src/pages/company/SupplierDetail.tsx:9 -#: src/pages/company/SupplierPartDetail.tsx:294 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:365 +#: src/pages/company/SupplierPartDetail.tsx:308 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:352 #: src/pages/purchasing/PurchasingIndex.tsx:52 msgid "Purchasing" msgstr "" @@ -2242,7 +2424,7 @@ msgstr "" #: src/pages/company/CustomerDetail.tsx:9 #: src/pages/sales/ReturnOrderDetail.tsx:332 #: src/pages/sales/SalesIndex.tsx:45 -#: src/pages/sales/SalesOrderDetail.tsx:356 +#: src/pages/sales/SalesOrderDetail.tsx:350 msgid "Sales" msgstr "" @@ -2466,10 +2648,6 @@ msgstr "" #~ msgid "Company updated" #~ msgstr "Company updated" -#: src/forms/PartForms.tsx:100 -msgid "Parent part category" -msgstr "" - #: src/forms/PartForms.tsx:106 #~ msgid "Create Part" #~ msgstr "Create Part" @@ -2478,80 +2656,159 @@ msgstr "" #~ msgid "Part created" #~ msgstr "Part created" +#: src/forms/PartForms.tsx:123 +msgid "Parent part category" +msgstr "" + #: src/forms/PartForms.tsx:129 #~ msgid "Part updated" #~ msgstr "Part updated" -#: src/forms/PurchaseOrderForms.tsx:279 +#: src/forms/PurchaseOrderForms.tsx:300 msgid "Choose Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:287 +#: src/forms/PurchaseOrderForms.tsx:308 msgid "Item Destination selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:296 +#: src/forms/PurchaseOrderForms.tsx:317 msgid "Part category default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:306 +#: src/forms/PurchaseOrderForms.tsx:327 msgid "Received stock location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:311 +#: src/forms/PurchaseOrderForms.tsx:332 msgid "Default location selected" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:322 -#: src/forms/PurchaseOrderForms.tsx:398 +#: src/forms/PurchaseOrderForms.tsx:343 +#: src/forms/PurchaseOrderForms.tsx:435 msgid "Scan Barcode" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:366 +#: src/forms/PurchaseOrderForms.tsx:388 msgid "Set Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:373 +#: src/forms/PurchaseOrderForms.tsx:396 msgid "Assign Batch Code{0}" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:382 +#: src/forms/PurchaseOrderForms.tsx:405 +#: src/forms/StockForms.tsx:422 +msgid "Adjust Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:412 msgid "Change Status" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:407 -#: src/forms/StockForms.tsx:392 +#: src/forms/PurchaseOrderForms.tsx:418 +msgid "Add Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:444 +#: src/forms/StockForms.tsx:430 msgid "Remove item from list" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:432 -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/stock/StockDetail.tsx:173 -#: src/tables/ColumnRenderers.tsx:34 +#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/stock/StockDetail.tsx:172 +#: src/tables/ColumnRenderers.tsx:49 #: src/tables/stock/StockTrackingTable.tsx:85 msgid "Location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:448 +#: src/forms/PurchaseOrderForms.tsx:486 msgid "Store at default location" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:461 +#: src/forms/PurchaseOrderForms.tsx:499 msgid "Store at line item destination" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:471 +#: src/forms/PurchaseOrderForms.tsx:509 msgid "Store with already received stock" msgstr "" -#: src/forms/PurchaseOrderForms.tsx:627 +#: src/forms/PurchaseOrderForms.tsx:524 +#: src/pages/build/BuildDetail.tsx:201 +#: src/pages/stock/StockDetail.tsx:538 +#: src/tables/build/BuildAllocatedStockTable.tsx:71 +msgid "Batch Code" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:535 +msgid "Serial numbers" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:544 +#: src/forms/StockForms.tsx:445 +#: src/pages/company/SupplierPartDetail.tsx:147 +#: src/pages/company/SupplierPartDetail.tsx:198 +#: src/pages/stock/StockDetail.tsx:235 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:196 +msgid "Packaging" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:556 +#: src/pages/build/BuildDetail.tsx:93 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 +#: src/pages/sales/ReturnOrderDetail.tsx:99 +#: src/pages/sales/SalesOrderDetail.tsx:103 +#: src/tables/build/BuildOrderTable.tsx:113 +#: src/tables/machine/MachineListTable.tsx:335 +#: src/tables/purchasing/PurchaseOrderTable.tsx:55 +#: src/tables/sales/ReturnOrderTable.tsx:46 +#: src/tables/sales/SalesOrderTable.tsx:52 +#: src/tables/settings/ImportSessionTable.tsx:116 +#: src/tables/stock/StockItemTable.tsx:293 +#: src/tables/stock/StockTrackingTable.tsx:52 +msgid "Status" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:564 +#: src/pages/company/SupplierPartDetail.tsx:101 +#: src/tables/ColumnRenderers.tsx:132 +msgid "Note" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/pages/company/SupplierPartDetail.tsx:119 +#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 +msgid "SKU" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:182 +msgid "Received" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:639 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/tables/RowActions.tsx:149 +msgid "Actions" +msgstr "" + +#: src/forms/PurchaseOrderForms.tsx:655 msgid "Receive Line Items" msgstr "" @@ -2559,7 +2816,7 @@ msgstr "" #~ msgid "Receive line items" #~ msgstr "Receive line items" -#: src/forms/StockForms.tsx:101 +#: src/forms/StockForms.tsx:106 msgid "Add given quantity as packs instead of individual items" msgstr "" @@ -2567,15 +2824,15 @@ msgstr "" #~ msgid "Create Stock Item" #~ msgstr "Create Stock Item" -#: src/forms/StockForms.tsx:114 +#: src/forms/StockForms.tsx:119 msgid "Enter initial quantity for this stock item" msgstr "" -#: src/forms/StockForms.tsx:121 +#: src/forms/StockForms.tsx:126 msgid "Serial Numbers" msgstr "" -#: src/forms/StockForms.tsx:122 +#: src/forms/StockForms.tsx:127 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" @@ -2583,94 +2840,82 @@ msgstr "" #~ msgid "Stock item updated" #~ msgstr "Stock item updated" -#: src/forms/StockForms.tsx:176 -#: src/pages/stock/StockDetail.tsx:379 -#: src/tables/stock/StockItemTable.tsx:382 -#: src/tables/stock/StockItemTable.tsx:499 +#: src/forms/StockForms.tsx:181 +#: src/pages/stock/StockDetail.tsx:378 +#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:533 msgid "Add Stock Item" msgstr "" -#: src/forms/StockForms.tsx:339 +#: src/forms/StockForms.tsx:364 msgid "Loading..." msgstr "" -#: src/forms/StockForms.tsx:381 +#: src/forms/StockForms.tsx:410 msgid "Move to default location" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/pages/part/PartDetail.tsx:202 -#: src/pages/part/PartDetail.tsx:655 -#: src/tables/stock/StockItemTable.tsx:290 +#: src/forms/StockForms.tsx:501 +#: src/forms/StockForms.tsx:535 +#: src/forms/StockForms.tsx:564 +#: src/forms/StockForms.tsx:592 +#: src/forms/StockForms.tsx:623 +#: src/forms/StockForms.tsx:658 +#: src/forms/StockForms.tsx:700 +#: src/forms/StockForms.tsx:736 +#: src/pages/part/PartDetail.tsx:214 +#: src/pages/part/PartDetail.tsx:763 +#: src/tables/stock/StockItemTable.tsx:324 msgid "In Stock" msgstr "" -#: src/forms/StockForms.tsx:449 +#: src/forms/StockForms.tsx:501 msgid "Move" msgstr "" -#: src/forms/StockForms.tsx:449 -#: src/forms/StockForms.tsx:483 -#: src/forms/StockForms.tsx:512 -#: src/forms/StockForms.tsx:540 -#: src/forms/StockForms.tsx:571 -#: src/forms/StockForms.tsx:606 -#: src/forms/StockForms.tsx:648 -#: src/forms/StockForms.tsx:684 -#: src/tables/RowActions.tsx:149 -msgid "Actions" -msgstr "" - -#: src/forms/StockForms.tsx:512 -#: src/pages/stock/StockDetail.tsx:458 +#: src/forms/StockForms.tsx:564 +#: src/pages/stock/StockDetail.tsx:457 #: src/tables/stock/StockItemTestResultTable.tsx:323 msgid "Add" msgstr "" -#: src/forms/StockForms.tsx:540 +#: src/forms/StockForms.tsx:592 #: src/pages/Index/Scan.tsx:266 -#: src/pages/stock/StockDetail.tsx:448 +#: src/pages/stock/StockDetail.tsx:447 msgid "Count" msgstr "" -#: src/forms/StockForms.tsx:785 +#: src/forms/StockForms.tsx:837 msgid "Add Stock" msgstr "" -#: src/forms/StockForms.tsx:794 +#: src/forms/StockForms.tsx:846 msgid "Remove Stock" msgstr "" -#: src/forms/StockForms.tsx:803 -#: src/pages/part/PartDetail.tsx:782 +#: src/forms/StockForms.tsx:855 +#: src/pages/part/PartDetail.tsx:926 msgid "Transfer Stock" msgstr "" -#: src/forms/StockForms.tsx:812 -#: src/pages/part/PartDetail.tsx:771 +#: src/forms/StockForms.tsx:864 +#: src/pages/part/PartDetail.tsx:915 msgid "Count Stock" msgstr "" -#: src/forms/StockForms.tsx:821 +#: src/forms/StockForms.tsx:873 msgid "Change Stock Status" msgstr "" -#: src/forms/StockForms.tsx:830 +#: src/forms/StockForms.tsx:882 msgid "Merge Stock" msgstr "" -#: src/forms/StockForms.tsx:849 +#: src/forms/StockForms.tsx:901 msgid "Delete Stock Items" msgstr "" -#: src/forms/StockForms.tsx:856 +#: src/forms/StockForms.tsx:908 msgid "Parent stock location" msgstr "" @@ -2694,11 +2939,11 @@ msgstr "" #~ msgid "You have been logged out" #~ msgstr "You have been logged out" -#: src/functions/auth.tsx:118 +#: src/functions/auth.tsx:117 msgid "Logged Out" msgstr "" -#: src/functions/auth.tsx:119 +#: src/functions/auth.tsx:118 msgid "Successfully logged out" msgstr "" @@ -2714,20 +2959,20 @@ msgstr "" #~ msgid "Found an existing login - welcome back!" #~ msgstr "Found an existing login - welcome back!" -#: src/functions/auth.tsx:157 +#: src/functions/auth.tsx:156 msgid "Check your inbox for a reset link. This only works if you have an account. Check in spam too." msgstr "" -#: src/functions/auth.tsx:164 +#: src/functions/auth.tsx:163 #: src/pages/Auth/Set-Password.tsx:39 msgid "Reset failed" msgstr "" -#: src/functions/auth.tsx:195 +#: src/functions/auth.tsx:194 msgid "Logged In" msgstr "" -#: src/functions/auth.tsx:196 +#: src/functions/auth.tsx:195 msgid "Successfully logged in" msgstr "" @@ -2740,12 +2985,12 @@ msgstr "" #~ msgstr "Response did not contain action data" #: src/functions/forms.tsx:182 -msgid "Invalid Form" -msgstr "" +#~ msgid "Invalid Form" +#~ msgstr "Invalid Form" #: src/functions/forms.tsx:183 -msgid "method parameter not supplied" -msgstr "" +#~ msgid "method parameter not supplied" +#~ msgstr "method parameter not supplied" #: src/functions/notifications.tsx:10 msgid "Not implemented" @@ -3279,53 +3524,57 @@ msgstr "" #~ msgid "Advanced Amininistrative Options for InvenTree" #~ msgstr "Advanced Amininistrative Options for InvenTree" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:91 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:104 +msgid "Data Import" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/Index.tsx:110 msgid "Background Tasks" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:97 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:116 msgid "Error Reports" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:103 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:122 msgid "Currencies" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:121 -msgid "Custom Units" -msgstr "" - -#: src/pages/Index/Settings/AdminCenter/Index.tsx:127 -#: src/pages/part/CategoryDetail.tsx:257 -msgid "Part Parameters" -msgstr "" - #: src/pages/Index/Settings/AdminCenter/Index.tsx:127 #~ msgid "Templates" #~ msgstr "Templates" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:133 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:140 +msgid "Custom Units" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/Index.tsx:146 +#: src/pages/part/CategoryDetail.tsx:257 +msgid "Part Parameters" +msgstr "" + +#: src/pages/Index/Settings/AdminCenter/Index.tsx:152 msgid "Category Parameters" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:151 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:170 msgid "Location types" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:163 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:182 #: src/tables/machine/MachineTypeTable.tsx:287 msgid "Machines" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:173 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:192 msgid "Quick Actions" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:178 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:197 msgid "Add a new user" msgstr "" -#: src/pages/Index/Settings/AdminCenter/Index.tsx:199 +#: src/pages/Index/Settings/AdminCenter/Index.tsx:222 msgid "Advanced Options" msgstr "" @@ -3472,45 +3721,44 @@ msgid "Labels" msgstr "" #: src/pages/Index/Settings/SystemSettings.tsx:155 -#: src/pages/Index/Settings/UserSettings.tsx:102 +#: src/pages/Index/Settings/UserSettings.tsx:107 msgid "Reporting" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:235 -#: src/pages/part/PartDetail.tsx:593 -#: src/tables/stock/StockItemTable.tsx:221 +#: src/pages/Index/Settings/SystemSettings.tsx:236 +#: src/pages/part/PartDetail.tsx:618 msgid "Stocktake" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:241 -#: src/pages/build/BuildDetail.tsx:423 +#: src/pages/Index/Settings/SystemSettings.tsx:242 +#: src/pages/build/BuildDetail.tsx:435 #: src/pages/build/BuildIndex.tsx:14 -#: src/pages/part/PartDetail.tsx:527 -#: src/pages/sales/SalesOrderDetail.tsx:270 +#: src/pages/part/PartDetail.tsx:552 +#: src/pages/sales/SalesOrderDetail.tsx:264 msgid "Build Orders" msgstr "" -#: src/pages/Index/Settings/SystemSettings.tsx:316 +#: src/pages/Index/Settings/SystemSettings.tsx:322 msgid "Switch to User Setting" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:30 +#: src/pages/Index/Settings/UserSettings.tsx:35 msgid "Account" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:36 +#: src/pages/Index/Settings/UserSettings.tsx:41 msgid "Security" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:48 +#: src/pages/Index/Settings/UserSettings.tsx:53 msgid "Display Options" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:118 +#: src/pages/Index/Settings/UserSettings.tsx:126 msgid "Account Settings" msgstr "" -#: src/pages/Index/Settings/UserSettings.tsx:122 +#: src/pages/Index/Settings/UserSettings.tsx:130 msgid "Switch to System Setting" msgstr "" @@ -3546,40 +3794,27 @@ msgstr "" #~ msgid "Build Status" #~ msgstr "Build Status" -#: src/pages/build/BuildDetail.tsx:91 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:131 -#: src/pages/sales/ReturnOrderDetail.tsx:99 -#: src/pages/sales/SalesOrderDetail.tsx:103 -#: src/tables/build/BuildOrderTable.tsx:113 -#: src/tables/machine/MachineListTable.tsx:326 -#: src/tables/purchasing/PurchaseOrderTable.tsx:55 -#: src/tables/sales/ReturnOrderTable.tsx:46 -#: src/tables/sales/SalesOrderTable.tsx:52 -#: src/tables/stock/StockItemTable.tsx:259 -#: src/tables/stock/StockTrackingTable.tsx:52 -msgid "Status" -msgstr "" - -#: src/pages/build/BuildDetail.tsx:97 +#: src/pages/build/BuildDetail.tsx:99 #: src/pages/purchasing/PurchaseOrderDetail.tsx:104 #: src/pages/sales/ReturnOrderDetail.tsx:73 #: src/pages/sales/SalesOrderDetail.tsx:77 -#: src/tables/ColumnRenderers.tsx:106 +#: src/tables/ColumnRenderers.tsx:121 +#: src/tables/build/BuildAllocatedStockTable.tsx:52 #: src/tables/build/BuildLineTable.tsx:140 msgid "Reference" msgstr "" -#: src/pages/build/BuildDetail.tsx:102 +#: src/pages/build/BuildDetail.tsx:104 #: src/pages/company/CompanyDetail.tsx:88 -#: src/pages/company/ManufacturerPartDetail.tsx:78 -#: src/pages/company/SupplierPartDetail.tsx:85 +#: src/pages/company/ManufacturerPartDetail.tsx:80 +#: src/pages/company/SupplierPartDetail.tsx:87 #: src/pages/part/CategoryDetail.tsx:94 -#: src/pages/part/PartDetail.tsx:129 +#: src/pages/part/PartDetail.tsx:134 #: src/pages/purchasing/PurchaseOrderDetail.tsx:125 #: src/pages/sales/ReturnOrderDetail.tsx:93 #: src/pages/sales/SalesOrderDetail.tsx:97 #: src/pages/stock/LocationDetail.tsx:101 -#: src/tables/ColumnRenderers.tsx:66 +#: src/tables/ColumnRenderers.tsx:81 #: src/tables/machine/MachineTypeTable.tsx:69 #: src/tables/machine/MachineTypeTable.tsx:112 #: src/tables/machine/MachineTypeTable.tsx:219 @@ -3591,29 +3826,29 @@ msgstr "" msgid "Description" msgstr "" -#: src/pages/build/BuildDetail.tsx:109 +#: src/pages/build/BuildDetail.tsx:111 msgid "Parent Build" msgstr "" -#: src/pages/build/BuildDetail.tsx:120 +#: src/pages/build/BuildDetail.tsx:122 msgid "Build Quantity" msgstr "" -#: src/pages/build/BuildDetail.tsx:128 -#: src/pages/build/BuildDetail.tsx:258 +#: src/pages/build/BuildDetail.tsx:130 +#: src/pages/build/BuildDetail.tsx:260 msgid "Completed Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:145 +#: src/pages/build/BuildDetail.tsx:147 #: src/tables/build/BuildOrderTable.tsx:142 msgid "Issued By" msgstr "" -#: src/pages/build/BuildDetail.tsx:152 -#: src/pages/part/PartDetail.tsx:317 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:217 +#: src/pages/build/BuildDetail.tsx:154 +#: src/pages/part/PartDetail.tsx:342 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:203 #: src/pages/sales/ReturnOrderDetail.tsx:186 -#: src/pages/sales/SalesOrderDetail.tsx:190 +#: src/pages/sales/SalesOrderDetail.tsx:184 #: src/tables/build/BuildOrderTable.tsx:148 #: src/tables/purchasing/PurchaseOrderTable.tsx:75 #: src/tables/sales/ReturnOrderTable.tsx:66 @@ -3621,34 +3856,34 @@ msgstr "" msgid "Responsible" msgstr "" -#: src/pages/build/BuildDetail.tsx:159 +#: src/pages/build/BuildDetail.tsx:161 #: src/tables/settings/PendingTasksTable.tsx:30 msgid "Created" msgstr "" -#: src/pages/build/BuildDetail.tsx:166 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:210 +#: src/pages/build/BuildDetail.tsx:168 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:196 #: src/pages/sales/ReturnOrderDetail.tsx:179 -#: src/pages/sales/SalesOrderDetail.tsx:183 -#: src/tables/ColumnRenderers.tsx:191 +#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/tables/ColumnRenderers.tsx:206 msgid "Target Date" msgstr "" -#: src/pages/build/BuildDetail.tsx:173 +#: src/pages/build/BuildDetail.tsx:175 msgid "Completed" msgstr "" -#: src/pages/build/BuildDetail.tsx:185 -msgid "Source Location" -msgstr "" - #: src/pages/build/BuildDetail.tsx:185 #: src/pages/part/PartDetail.tsx:269 #: src/pages/stock/StockDetail.tsx:150 #~ msgid "View part barcode" #~ msgstr "View part barcode" -#: src/pages/build/BuildDetail.tsx:186 +#: src/pages/build/BuildDetail.tsx:187 +msgid "Source Location" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:188 msgid "Any location" msgstr "" @@ -3657,7 +3892,7 @@ msgstr "" #~ msgid "Link custom barcode to part" #~ msgstr "Link custom barcode to part" -#: src/pages/build/BuildDetail.tsx:193 +#: src/pages/build/BuildDetail.tsx:195 msgid "Destination Location" msgstr "" @@ -3666,11 +3901,6 @@ msgstr "" #~ msgid "Unlink custom barcode from part" #~ msgstr "Unlink custom barcode from part" -#: src/pages/build/BuildDetail.tsx:199 -#: src/pages/stock/StockDetail.tsx:539 -msgid "Batch Code" -msgstr "" - #: src/pages/build/BuildDetail.tsx:202 #~ msgid "Build Order updated" #~ msgstr "Build Order updated" @@ -3683,62 +3913,71 @@ msgstr "" #~ msgid "Duplicate build order" #~ msgstr "Duplicate build order" -#: src/pages/build/BuildDetail.tsx:231 -msgid "Build Details" -msgstr "" - #: src/pages/build/BuildDetail.tsx:231 #~ msgid "Delete build order" #~ msgstr "Delete build order" -#: src/pages/build/BuildDetail.tsx:237 -#: src/tables/build/BuildLineTable.tsx:225 -msgid "Allocate Stock" +#: src/pages/build/BuildDetail.tsx:233 +msgid "Build Details" msgstr "" -#: src/pages/build/BuildDetail.tsx:251 +#: src/pages/build/BuildDetail.tsx:239 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:241 +#: src/pages/sales/ReturnOrderDetail.tsx:108 +#: src/pages/sales/ReturnOrderDetail.tsx:224 +#: src/pages/sales/SalesOrderDetail.tsx:246 +msgid "Line Items" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:253 msgid "Incomplete Outputs" msgstr "" -#: src/pages/build/BuildDetail.tsx:273 +#: src/pages/build/BuildDetail.tsx:275 +msgid "Allocated Stock" +msgstr "" + +#: src/pages/build/BuildDetail.tsx:285 msgid "Consumed Stock" msgstr "" -#: src/pages/build/BuildDetail.tsx:287 +#: src/pages/build/BuildDetail.tsx:299 msgid "Child Build Orders" msgstr "" -#: src/pages/build/BuildDetail.tsx:297 +#: src/pages/build/BuildDetail.tsx:309 #: src/pages/company/CompanyDetail.tsx:257 -#: src/pages/company/ManufacturerPartDetail.tsx:174 -#: src/pages/part/PartDetail.tsx:616 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:279 +#: src/pages/company/ManufacturerPartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:641 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 #: src/pages/sales/ReturnOrderDetail.tsx:230 -#: src/pages/sales/SalesOrderDetail.tsx:280 -#: src/pages/stock/StockDetail.tsx:330 +#: src/pages/sales/SalesOrderDetail.tsx:274 +#: src/pages/stock/StockDetail.tsx:329 msgid "Attachments" msgstr "" -#: src/pages/build/BuildDetail.tsx:305 +#: src/pages/build/BuildDetail.tsx:317 #: src/pages/company/CompanyDetail.tsx:268 -#: src/pages/part/PartDetail.tsx:624 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:290 +#: src/pages/company/ManufacturerPartDetail.tsx:187 +#: src/pages/company/SupplierPartDetail.tsx:248 +#: src/pages/part/PartDetail.tsx:649 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:277 #: src/pages/sales/ReturnOrderDetail.tsx:241 -#: src/pages/sales/SalesOrderDetail.tsx:291 -#: src/pages/stock/StockDetail.tsx:341 +#: src/pages/sales/SalesOrderDetail.tsx:285 +#: src/pages/stock/StockDetail.tsx:340 #: src/tables/stock/StockTrackingTable.tsx:189 msgid "Notes" msgstr "" -#: src/pages/build/BuildDetail.tsx:323 +#: src/pages/build/BuildDetail.tsx:335 msgid "Edit Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:332 +#: src/pages/build/BuildDetail.tsx:344 msgid "Cancel Build Order" msgstr "" -#: src/pages/build/BuildDetail.tsx:344 +#: src/pages/build/BuildDetail.tsx:356 #: src/tables/build/BuildOrderTable.tsx:167 #: src/tables/build/BuildOrderTable.tsx:182 msgid "Add Build Order" @@ -3752,14 +3991,14 @@ msgstr "" #~ msgid "Print build report" #~ msgstr "Print build report" -#: src/pages/build/BuildDetail.tsx:376 +#: src/pages/build/BuildDetail.tsx:388 msgid "Build Order Actions" msgstr "" -#: src/pages/build/BuildDetail.tsx:384 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:333 +#: src/pages/build/BuildDetail.tsx:396 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:320 #: src/pages/sales/ReturnOrderDetail.tsx:309 -#: src/pages/sales/SalesOrderDetail.tsx:321 +#: src/pages/sales/SalesOrderDetail.tsx:315 msgid "Cancel order" msgstr "" @@ -3785,9 +4024,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:124 #: src/pages/company/SupplierDetail.tsx:8 -#: src/pages/company/SupplierPartDetail.tsx:109 -#: src/pages/company/SupplierPartDetail.tsx:195 -#: src/pages/company/SupplierPartDetail.tsx:298 +#: src/pages/company/SupplierPartDetail.tsx:111 +#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:312 #: src/pages/purchasing/PurchaseOrderDetail.tsx:119 #: src/tables/company/CompanyTable.tsx:100 #: src/tables/purchasing/PurchaseOrderTable.tsx:88 @@ -3797,9 +4036,9 @@ msgstr "" #: src/pages/company/CompanyDetail.tsx:130 #: src/pages/company/ManufacturerDetail.tsx:8 -#: src/pages/company/ManufacturerPartDetail.tsx:96 -#: src/pages/company/ManufacturerPartDetail.tsx:240 -#: src/pages/company/SupplierPartDetail.tsx:124 +#: src/pages/company/ManufacturerPartDetail.tsx:98 +#: src/pages/company/ManufacturerPartDetail.tsx:254 +#: src/pages/company/SupplierPartDetail.tsx:126 #: src/tables/company/CompanyTable.tsx:105 msgid "Manufacturer" msgstr "" @@ -3809,7 +4048,7 @@ msgstr "" #: src/pages/part/pricing/SaleHistoryPanel.tsx:29 #: src/pages/sales/ReturnOrderDetail.tsx:87 #: src/pages/sales/SalesOrderDetail.tsx:91 -#: src/pages/stock/StockDetail.tsx:222 +#: src/pages/stock/StockDetail.tsx:221 #: src/tables/company/CompanyTable.tsx:110 #: src/tables/sales/ReturnOrderTable.tsx:78 #: src/tables/sales/SalesOrderTable.tsx:107 @@ -3851,121 +4090,105 @@ msgstr "" msgid "Company Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:71 -#: src/pages/company/SupplierPartDetail.tsx:78 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:72 +#: src/pages/company/ManufacturerPartDetail.tsx:73 +#: src/pages/company/SupplierPartDetail.tsx:80 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:125 msgid "Internal Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:86 -#: src/pages/company/SupplierPartDetail.tsx:92 +#: src/pages/company/ManufacturerPartDetail.tsx:88 +#: src/pages/company/SupplierPartDetail.tsx:94 msgid "External Link" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:104 -#: src/pages/company/SupplierPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:106 +#: src/pages/company/SupplierPartDetail.tsx:135 #: src/tables/purchasing/ManufacturerPartTable.tsx:56 msgid "Manufacturer Part Number" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:133 +#: src/pages/company/ManufacturerPartDetail.tsx:135 msgid "Manufacturer Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:142 +#: src/pages/company/ManufacturerPartDetail.tsx:144 msgid "Manufacturer Part Details" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:148 -#: src/pages/part/PartDetail.tsx:486 +#: src/pages/company/ManufacturerPartDetail.tsx:150 +#: src/pages/part/PartDetail.tsx:504 msgid "Parameters" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:160 -#: src/pages/part/PartDetail.tsx:560 +#: src/pages/company/ManufacturerPartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:585 #: src/pages/purchasing/PurchasingIndex.tsx:26 msgid "Suppliers" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:191 +#: src/pages/company/ManufacturerPartDetail.tsx:205 #: src/tables/purchasing/ManufacturerPartTable.tsx:84 msgid "Edit Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:198 +#: src/pages/company/ManufacturerPartDetail.tsx:212 #: src/tables/purchasing/ManufacturerPartTable.tsx:72 #: src/tables/purchasing/ManufacturerPartTable.tsx:103 msgid "Add Manufacturer Part" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:214 +#: src/pages/company/ManufacturerPartDetail.tsx:228 msgid "Manufacturer Part Actions" msgstr "" -#: src/pages/company/ManufacturerPartDetail.tsx:252 +#: src/pages/company/ManufacturerPartDetail.tsx:266 msgid "ManufacturerPart" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:99 -#: src/tables/ColumnRenderers.tsx:117 -msgid "Note" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:117 -#: src/tables/purchasing/SupplierPriceBreakTable.tsx:57 -msgid "SKU" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:145 -#: src/pages/company/SupplierPartDetail.tsx:196 -#: src/pages/stock/StockDetail.tsx:236 -msgid "Packaging" -msgstr "" - -#: src/pages/company/SupplierPartDetail.tsx:152 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:107 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:143 +#: src/pages/company/SupplierPartDetail.tsx:154 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:160 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:201 #: src/tables/purchasing/SupplierPartTable.tsx:131 msgid "Pack Quantity" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:163 +#: src/pages/company/SupplierPartDetail.tsx:165 msgid "Supplier Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:170 +#: src/pages/company/SupplierPartDetail.tsx:172 msgid "Availability Updated" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:197 +#: src/pages/company/SupplierPartDetail.tsx:199 msgid "Availability" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:206 +#: src/pages/company/SupplierPartDetail.tsx:208 msgid "Supplier Part Details" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:212 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:266 +#: src/pages/company/SupplierPartDetail.tsx:214 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:253 msgid "Received Stock" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:236 +#: src/pages/company/SupplierPartDetail.tsx:238 #: src/pages/part/PartPricingPanel.tsx:115 #: src/pages/part/pricing/PricingOverviewPanel.tsx:121 msgid "Supplier Pricing" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:251 +#: src/pages/company/SupplierPartDetail.tsx:265 msgid "Supplier Part Actions" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:275 +#: src/pages/company/SupplierPartDetail.tsx:289 #: src/tables/purchasing/SupplierPartTable.tsx:210 msgid "Edit Supplier Part" msgstr "" -#: src/pages/company/SupplierPartDetail.tsx:282 +#: src/pages/company/SupplierPartDetail.tsx:296 #: src/tables/purchasing/SupplierPartTable.tsx:163 msgid "Add Supplier Part" msgstr "" @@ -4043,278 +4266,302 @@ msgstr "" msgid "Category Details" msgstr "" -#: src/pages/part/PartDetail.tsx:135 +#: src/pages/part/PartDetail.tsx:140 msgid "Variant of" msgstr "" -#: src/pages/part/PartDetail.tsx:142 +#: src/pages/part/PartDetail.tsx:147 +msgid "Revision of" +msgstr "" + +#: src/pages/part/PartDetail.tsx:154 +#: src/tables/stock/StockItemTable.tsx:57 +msgid "Revision" +msgstr "" + +#: src/pages/part/PartDetail.tsx:161 #: src/tables/notifications/NotificationsTable.tsx:31 #: src/tables/part/PartCategoryTemplateTable.tsx:67 msgid "Category" msgstr "" -#: src/pages/part/PartDetail.tsx:148 +#: src/pages/part/PartDetail.tsx:167 msgid "Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:155 +#: src/pages/part/PartDetail.tsx:174 msgid "Category Default Location" msgstr "" -#: src/pages/part/PartDetail.tsx:162 +#: src/pages/part/PartDetail.tsx:181 +#: src/tables/bom/BomTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:52 msgid "IPN" msgstr "" -#: src/pages/part/PartDetail.tsx:169 -msgid "Revision" -msgstr "" - -#: src/pages/part/PartDetail.tsx:176 +#: src/pages/part/PartDetail.tsx:188 #: src/tables/purchasing/ManufacturerPartParameterTable.tsx:44 msgid "Units" msgstr "" -#: src/pages/part/PartDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:195 #: src/tables/settings/PendingTasksTable.tsx:40 msgid "Keywords" msgstr "" -#: src/pages/part/PartDetail.tsx:190 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:183 +#: src/pages/part/PartDetail.tsx:202 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 #: src/pages/sales/ReturnOrderDetail.tsx:152 -#: src/pages/sales/SalesOrderDetail.tsx:156 +#: src/pages/sales/SalesOrderDetail.tsx:150 msgid "Link" msgstr "" -#: src/pages/part/PartDetail.tsx:208 -#: src/tables/bom/BomTable.tsx:276 +#: src/pages/part/PartDetail.tsx:220 +#: src/tables/bom/BomTable.tsx:314 #: src/tables/build/BuildLineTable.tsx:121 -#: src/tables/part/PartTable.tsx:256 +#: src/tables/part/PartTable.tsx:282 msgid "Available Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:215 +#: src/pages/part/PartDetail.tsx:227 +msgid "Variant Stock" +msgstr "" + +#: src/pages/part/PartDetail.tsx:235 msgid "Minimum Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:221 -#: src/tables/bom/BomTable.tsx:217 +#: src/pages/part/PartDetail.tsx:241 +#: src/tables/bom/BomTable.tsx:236 #: src/tables/build/BuildLineTable.tsx:95 msgid "On order" msgstr "" -#: src/pages/part/PartDetail.tsx:230 +#: src/pages/part/PartDetail.tsx:250 msgid "Allocated to Build Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:238 +#: src/pages/part/PartDetail.tsx:258 msgid "Allocated to Sales Orders" msgstr "" -#: src/pages/part/PartDetail.tsx:245 -#: src/tables/bom/BomTable.tsx:241 +#: src/pages/part/PartDetail.tsx:265 +#: src/tables/bom/BomTable.tsx:260 +#: src/tables/bom/BomTable.tsx:292 msgid "Can Build" msgstr "" -#: src/pages/part/PartDetail.tsx:252 -#: src/tables/bom/BomTable.tsx:225 -#: src/tables/part/PartTable.tsx:82 +#: src/pages/part/PartDetail.tsx:272 +#: src/tables/bom/BomTable.tsx:244 +#: src/tables/part/PartTable.tsx:92 msgid "Building" msgstr "" -#: src/pages/part/PartDetail.tsx:261 +#: src/pages/part/PartDetail.tsx:281 #: src/tables/bom/UsedInTable.tsx:73 #: src/tables/build/BuildOrderTable.tsx:108 #: src/tables/company/CompanyTable.tsx:61 #: src/tables/company/CompanyTable.tsx:95 -#: src/tables/machine/MachineListTable.tsx:323 -#: src/tables/machine/MachineListTable.tsx:585 -#: src/tables/part/PartTable.tsx:168 +#: src/tables/machine/MachineListTable.tsx:332 +#: src/tables/machine/MachineListTable.tsx:594 +#: src/tables/part/ParametricPartTable.tsx:222 +#: src/tables/part/PartTable.tsx:178 #: src/tables/part/PartVariantTable.tsx:15 #: src/tables/plugin/PluginListTable.tsx:149 #: src/tables/plugin/PluginListTable.tsx:271 #: src/tables/plugin/PluginListTable.tsx:563 #: src/tables/purchasing/SupplierPartTable.tsx:98 #: src/tables/purchasing/SupplierPartTable.tsx:187 -#: src/tables/stock/StockItemTable.tsx:254 +#: src/tables/stock/StockItemTable.tsx:288 msgid "Active" msgstr "" -#: src/pages/part/PartDetail.tsx:266 -msgid "Template Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:271 -#: src/tables/bom/BomTable.tsx:271 -msgid "Assembled Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:276 -msgid "Component Part" -msgstr "" - -#: src/pages/part/PartDetail.tsx:281 -#: src/tables/bom/BomTable.tsx:266 -msgid "Trackable Part" -msgstr "" - #: src/pages/part/PartDetail.tsx:286 -msgid "Purchaseable Part" +#: src/pages/part/PartDetail.tsx:793 +#: src/tables/part/ParametricPartTable.tsx:227 +#: src/tables/part/PartTable.tsx:184 +msgid "Locked" msgstr "" #: src/pages/part/PartDetail.tsx:291 -msgid "Saleable Part" +msgid "Template Part" msgstr "" #: src/pages/part/PartDetail.tsx:296 -msgid "Virtual Part" +#: src/tables/bom/BomTable.tsx:309 +msgid "Assembled Part" msgstr "" -#: src/pages/part/PartDetail.tsx:304 -#: src/tables/ColumnRenderers.tsx:199 -msgid "Creation Date" +#: src/pages/part/PartDetail.tsx:301 +msgid "Component Part" msgstr "" -#: src/pages/part/PartDetail.tsx:309 -msgid "Created By" +#: src/pages/part/PartDetail.tsx:306 +#: src/tables/bom/BomTable.tsx:304 +msgid "Trackable Part" msgstr "" #: src/pages/part/PartDetail.tsx:310 #~ msgid "Edit part" #~ msgstr "Edit part" +#: src/pages/part/PartDetail.tsx:311 +msgid "Purchaseable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:316 +msgid "Saleable Part" +msgstr "" + +#: src/pages/part/PartDetail.tsx:321 +msgid "Virtual Part" +msgstr "" + #: src/pages/part/PartDetail.tsx:322 #~ msgid "Duplicate part" #~ msgstr "Duplicate part" -#: src/pages/part/PartDetail.tsx:324 -msgid "Default Supplier" -msgstr "" - #: src/pages/part/PartDetail.tsx:327 #~ msgid "Delete part" #~ msgstr "Delete part" -#: src/pages/part/PartDetail.tsx:335 +#: src/pages/part/PartDetail.tsx:329 +#: src/tables/ColumnRenderers.tsx:214 +msgid "Creation Date" +msgstr "" + +#: src/pages/part/PartDetail.tsx:334 +msgid "Created By" +msgstr "" + +#: src/pages/part/PartDetail.tsx:349 +msgid "Default Supplier" +msgstr "" + +#: src/pages/part/PartDetail.tsx:360 #: src/pages/part/pricing/BomPricingPanel.tsx:78 #: src/pages/part/pricing/VariantPricingPanel.tsx:95 -#: src/tables/part/PartTable.tsx:151 +#: src/tables/part/PartTable.tsx:161 msgid "Price Range" msgstr "" -#: src/pages/part/PartDetail.tsx:374 -#: src/pages/stock/StockDetail.tsx:133 +#: src/pages/part/PartDetail.tsx:399 +#: src/pages/stock/StockDetail.tsx:132 msgid "Last Stocktake" msgstr "" -#: src/pages/part/PartDetail.tsx:409 +#: src/pages/part/PartDetail.tsx:434 msgid "Stocktake By" msgstr "" -#: src/pages/part/PartDetail.tsx:480 +#: src/pages/part/PartDetail.tsx:498 msgid "Part Details" msgstr "" -#: src/pages/part/PartDetail.tsx:506 +#: src/pages/part/PartDetail.tsx:529 msgid "Variants" msgstr "" -#: src/pages/part/PartDetail.tsx:513 -#: src/pages/stock/StockDetail.tsx:286 +#: src/pages/part/PartDetail.tsx:536 +#: src/pages/stock/StockDetail.tsx:285 msgid "Allocations" msgstr "" -#: src/pages/part/PartDetail.tsx:520 +#: src/pages/part/PartDetail.tsx:543 msgid "Bill of Materials" msgstr "" -#: src/pages/part/PartDetail.tsx:534 +#: src/pages/part/PartDetail.tsx:559 msgid "Used In" msgstr "" -#: src/pages/part/PartDetail.tsx:541 +#: src/pages/part/PartDetail.tsx:566 msgid "Part Pricing" msgstr "" -#: src/pages/part/PartDetail.tsx:547 +#: src/pages/part/PartDetail.tsx:572 #: src/pages/purchasing/PurchasingIndex.tsx:37 msgid "Manufacturers" msgstr "" -#: src/pages/part/PartDetail.tsx:587 +#: src/pages/part/PartDetail.tsx:612 msgid "Scheduling" msgstr "" -#: src/pages/part/PartDetail.tsx:599 +#: src/pages/part/PartDetail.tsx:624 msgid "Test Templates" msgstr "" -#: src/pages/part/PartDetail.tsx:610 +#: src/pages/part/PartDetail.tsx:635 msgid "Related Parts" msgstr "" -#: src/pages/part/PartDetail.tsx:661 -#: src/pages/stock/StockDetail.tsx:154 -#: src/pages/stock/StockDetail.tsx:533 +#: src/pages/part/PartDetail.tsx:769 +#: src/pages/stock/StockDetail.tsx:153 +#: src/pages/stock/StockDetail.tsx:532 #: src/tables/build/BuildLineTable.tsx:36 -#: src/tables/part/PartTable.tsx:107 -#: src/tables/stock/StockItemTable.tsx:166 -#: src/tables/stock/StockItemTable.tsx:275 +#: src/tables/part/PartTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:176 +#: src/tables/stock/StockItemTable.tsx:309 msgid "Available" msgstr "" -#: src/pages/part/PartDetail.tsx:667 +#: src/pages/part/PartDetail.tsx:775 msgid "No Stock" msgstr "" -#: src/pages/part/PartDetail.tsx:673 -#: src/tables/bom/BomTable.tsx:281 -#: src/tables/part/PartTable.tsx:76 +#: src/pages/part/PartDetail.tsx:781 +#: src/tables/bom/BomTable.tsx:319 +#: src/tables/part/PartTable.tsx:86 msgid "On Order" msgstr "" -#: src/pages/part/PartDetail.tsx:679 -#: src/pages/stock/StockDetail.tsx:516 -#: src/tables/stock/StockItemTable.tsx:295 +#: src/pages/part/PartDetail.tsx:787 +#: src/pages/stock/StockDetail.tsx:515 +#: src/tables/stock/StockItemTable.tsx:329 msgid "In Production" msgstr "" -#: src/pages/part/PartDetail.tsx:698 +#: src/pages/part/PartDetail.tsx:812 msgid "Edit Part" msgstr "" -#: src/pages/part/PartDetail.tsx:705 -#: src/tables/part/PartTable.tsx:289 -#: src/tables/part/PartTable.tsx:302 +#: src/pages/part/PartDetail.tsx:847 +#: src/tables/part/PartTable.tsx:315 +#: src/tables/part/PartTable.tsx:328 msgid "Add Part" msgstr "" -#: src/pages/part/PartDetail.tsx:717 +#: src/pages/part/PartDetail.tsx:861 msgid "Delete Part" msgstr "" -#: src/pages/part/PartDetail.tsx:726 +#: src/pages/part/PartDetail.tsx:870 msgid "Deleting this part cannot be reversed" msgstr "" -#: src/pages/part/PartDetail.tsx:764 +#: src/pages/part/PartDetail.tsx:908 #: src/pages/stock/LocationDetail.tsx:304 -#: src/tables/stock/StockItemTable.tsx:409 +#: src/tables/stock/StockItemTable.tsx:443 msgid "Stock Actions" msgstr "" -#: src/pages/part/PartDetail.tsx:772 +#: src/pages/part/PartDetail.tsx:916 msgid "Count part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:783 +#: src/pages/part/PartDetail.tsx:927 msgid "Transfer part stock" msgstr "" -#: src/pages/part/PartDetail.tsx:792 +#: src/pages/part/PartDetail.tsx:936 msgid "Part Actions" msgstr "" +#: src/pages/part/PartDetail.tsx:994 +msgid "Select Part Revision" +msgstr "" + #: src/pages/part/PartIndex.tsx:29 #~ msgid "Categories" #~ msgstr "Categories" @@ -4359,8 +4606,8 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:57 #: src/pages/part/pricing/BomPricingPanel.tsx:137 -#: src/tables/ColumnRenderers.tsx:241 -#: src/tables/bom/BomTable.tsx:165 +#: src/tables/ColumnRenderers.tsx:256 +#: src/tables/bom/BomTable.tsx:184 #: src/tables/purchasing/PurchaseOrderTable.tsx:112 #: src/tables/sales/ReturnOrderTable.tsx:104 #: src/tables/sales/SalesOrderTable.tsx:134 @@ -4369,7 +4616,7 @@ msgstr "" #: src/pages/part/pricing/BomPricingPanel.tsx:77 #: src/pages/part/pricing/BomPricingPanel.tsx:101 -#: src/tables/part/PartTable.tsx:186 +#: src/tables/part/PartTable.tsx:202 msgid "Component" msgstr "" @@ -4398,8 +4645,8 @@ msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:67 #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:128 #: src/pages/part/pricing/SupplierPricingPanel.tsx:62 -#: src/tables/bom/BomTable.tsx:156 -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:170 +#: src/tables/bom/BomTable.tsx:175 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:227 #: src/tables/purchasing/SupplierPriceBreakTable.tsx:88 msgid "Unit Price" msgstr "" @@ -4468,7 +4715,8 @@ msgid "Overall Pricing" msgstr "" #: src/pages/part/pricing/PricingOverviewPanel.tsx:175 -#: src/pages/stock/StockDetail.tsx:127 +#: src/pages/stock/StockDetail.tsx:126 +#: src/tables/stock/StockItemTable.tsx:239 msgid "Last Updated" msgstr "" @@ -4480,25 +4728,25 @@ msgstr "" msgid "Maximum Value" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:25 +#: src/pages/part/pricing/PricingPanel.tsx:24 msgid "No data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:66 +#: src/pages/part/pricing/PricingPanel.tsx:65 msgid "No Data" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:67 +#: src/pages/part/pricing/PricingPanel.tsx:66 msgid "No pricing data available" msgstr "" -#: src/pages/part/pricing/PricingPanel.tsx:78 +#: src/pages/part/pricing/PricingPanel.tsx:77 msgid "Loading pricing data" msgstr "" #: src/pages/part/pricing/PurchaseHistoryPanel.tsx:40 #: src/pages/part/pricing/SaleHistoryPanel.tsx:36 -#: src/tables/ColumnRenderers.tsx:180 +#: src/tables/ColumnRenderers.tsx:195 #: src/tables/plugin/PluginListTable.tsx:139 msgid "Date" msgstr "" @@ -4540,26 +4788,22 @@ msgstr "" msgid "Supplier Reference" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:140 -#: src/pages/purchasing/PurchaseOrderDetail.tsx:255 -#: src/pages/sales/ReturnOrderDetail.tsx:108 -#: src/pages/sales/ReturnOrderDetail.tsx:224 -#: src/pages/sales/SalesOrderDetail.tsx:112 -#: src/pages/sales/SalesOrderDetail.tsx:252 -msgid "Line Items" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:147 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:141 #: src/pages/sales/ReturnOrderDetail.tsx:115 -#: src/pages/sales/SalesOrderDetail.tsx:119 +#: src/pages/sales/SalesOrderDetail.tsx:113 msgid "Completed Line Items" msgstr "" +#: src/pages/purchasing/PurchaseOrderDetail.tsx:148 +#: src/pages/sales/ReturnOrderDetail.tsx:131 +#: src/pages/sales/SalesOrderDetail.tsx:129 +msgid "Order Currency" +msgstr "" + #: src/pages/purchasing/PurchaseOrderDetail.tsx:155 -#: src/pages/sales/ReturnOrderDetail.tsx:123 -#: src/pages/sales/SalesOrderDetail.tsx:127 -#: src/pages/sales/SalesOrderDetail.tsx:264 -msgid "Completed Shipments" +#: src/pages/sales/ReturnOrderDetail.tsx:138 +#: src/pages/sales/SalesOrderDetail.tsx:136 +msgid "Total Cost" msgstr "" #: src/pages/purchasing/PurchaseOrderDetail.tsx:159 @@ -4568,33 +4812,21 @@ msgstr "" #~ msgid "Order Currency," #~ msgstr "Order Currency," -#: src/pages/purchasing/PurchaseOrderDetail.tsx:162 -#: src/pages/sales/ReturnOrderDetail.tsx:131 -#: src/pages/sales/SalesOrderDetail.tsx:135 -msgid "Order Currency" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:169 -#: src/pages/sales/ReturnOrderDetail.tsx:138 -#: src/pages/sales/SalesOrderDetail.tsx:142 -msgid "Total Cost" -msgstr "" - -#: src/pages/purchasing/PurchaseOrderDetail.tsx:204 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:190 #: src/pages/sales/ReturnOrderDetail.tsx:173 -#: src/pages/sales/SalesOrderDetail.tsx:177 +#: src/pages/sales/SalesOrderDetail.tsx:171 msgid "Created On" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:249 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:235 #: src/pages/sales/ReturnOrderDetail.tsx:218 -#: src/pages/sales/SalesOrderDetail.tsx:246 +#: src/pages/sales/SalesOrderDetail.tsx:240 msgid "Order Details" msgstr "" -#: src/pages/purchasing/PurchaseOrderDetail.tsx:323 +#: src/pages/purchasing/PurchaseOrderDetail.tsx:310 #: src/pages/sales/ReturnOrderDetail.tsx:299 -#: src/pages/sales/SalesOrderDetail.tsx:313 +#: src/pages/sales/SalesOrderDetail.tsx:307 msgid "Order Actions" msgstr "" @@ -4604,6 +4836,12 @@ msgstr "" msgid "Customer Reference" msgstr "" +#: src/pages/sales/ReturnOrderDetail.tsx:123 +#: src/pages/sales/SalesOrderDetail.tsx:121 +#: src/pages/sales/SalesOrderDetail.tsx:258 +msgid "Completed Shipments" +msgstr "" + #: src/pages/sales/ReturnOrderDetail.tsx:271 msgid "Edit Return Order" msgstr "" @@ -4618,17 +4856,17 @@ msgstr "" msgid "Customers" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:223 +#: src/pages/sales/SalesOrderDetail.tsx:217 msgid "Edit Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:232 +#: src/pages/sales/SalesOrderDetail.tsx:226 #: src/tables/sales/SalesOrderTable.tsx:83 #: src/tables/sales/SalesOrderTable.tsx:95 msgid "Add Sales Order" msgstr "" -#: src/pages/sales/SalesOrderDetail.tsx:258 +#: src/pages/sales/SalesOrderDetail.tsx:252 msgid "Pending Shipments" msgstr "" @@ -4693,11 +4931,11 @@ msgstr "" msgid "Location Actions" msgstr "" -#: src/pages/stock/StockDetail.tsx:106 +#: src/pages/stock/StockDetail.tsx:105 msgid "Base Part" msgstr "" -#: src/pages/stock/StockDetail.tsx:113 +#: src/pages/stock/StockDetail.tsx:112 msgid "Stock Status" msgstr "" @@ -4709,15 +4947,15 @@ msgstr "" #~ msgid "Unlink custom barcode from stock item" #~ msgstr "Unlink custom barcode from stock item" -#: src/pages/stock/StockDetail.tsx:180 +#: src/pages/stock/StockDetail.tsx:179 msgid "Installed In" msgstr "" -#: src/pages/stock/StockDetail.tsx:196 +#: src/pages/stock/StockDetail.tsx:195 msgid "Consumed By" msgstr "" -#: src/pages/stock/StockDetail.tsx:205 +#: src/pages/stock/StockDetail.tsx:204 #: src/tables/stock/StockTrackingTable.tsx:96 msgid "Build Order" msgstr "" @@ -4730,31 +4968,31 @@ msgstr "" #~ msgid "Delete stock item" #~ msgstr "Delete stock item" -#: src/pages/stock/StockDetail.tsx:270 +#: src/pages/stock/StockDetail.tsx:269 msgid "Stock Details" msgstr "" -#: src/pages/stock/StockDetail.tsx:276 +#: src/pages/stock/StockDetail.tsx:275 msgid "Stock Tracking" msgstr "" -#: src/pages/stock/StockDetail.tsx:295 +#: src/pages/stock/StockDetail.tsx:294 msgid "Test Data" msgstr "" -#: src/pages/stock/StockDetail.tsx:309 +#: src/pages/stock/StockDetail.tsx:308 msgid "Installed Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:316 +#: src/pages/stock/StockDetail.tsx:315 msgid "Child Items" msgstr "" -#: src/pages/stock/StockDetail.tsx:370 +#: src/pages/stock/StockDetail.tsx:369 msgid "Edit Stock Item" msgstr "" -#: src/pages/stock/StockDetail.tsx:397 +#: src/pages/stock/StockDetail.tsx:396 msgid "Delete Stock Item" msgstr "" @@ -4762,46 +5000,54 @@ msgstr "" #~ msgid "Duplicate stock item" #~ msgstr "Duplicate stock item" -#: src/pages/stock/StockDetail.tsx:444 +#: src/pages/stock/StockDetail.tsx:443 msgid "Stock Operations" msgstr "" -#: src/pages/stock/StockDetail.tsx:449 +#: src/pages/stock/StockDetail.tsx:448 msgid "Count stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:459 -#: src/tables/stock/StockItemTable.tsx:414 +#: src/pages/stock/StockDetail.tsx:458 +#: src/tables/stock/StockItemTable.tsx:448 msgid "Add stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:467 -#: src/tables/stock/StockItemTable.tsx:423 +#: src/pages/stock/StockDetail.tsx:466 +#: src/tables/stock/StockItemTable.tsx:457 msgid "Remove stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:474 +#: src/pages/stock/StockDetail.tsx:473 msgid "Transfer" msgstr "" -#: src/pages/stock/StockDetail.tsx:475 -#: src/tables/stock/StockItemTable.tsx:443 +#: src/pages/stock/StockDetail.tsx:474 +#: src/tables/stock/StockItemTable.tsx:477 msgid "Transfer stock" msgstr "" -#: src/pages/stock/StockDetail.tsx:486 +#: src/pages/stock/StockDetail.tsx:485 msgid "Stock Item Actions" msgstr "" -#: src/tables/ColumnRenderers.tsx:42 +#: src/tables/ColumnRenderers.tsx:30 +msgid "Part is not active" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:35 +msgid "Part is locked" +msgstr "" + +#: src/tables/ColumnRenderers.tsx:57 msgid "No location set" msgstr "" -#: src/tables/ColumnRenderers.tsx:207 +#: src/tables/ColumnRenderers.tsx:222 msgid "Shipment Date" msgstr "" -#: src/tables/ColumnRenderers.tsx:227 +#: src/tables/ColumnRenderers.tsx:242 #: src/tables/settings/CurrencyTable.tsx:23 msgid "Currency" msgstr "" @@ -4828,14 +5074,14 @@ msgid "TSV" msgstr "" #: src/tables/DownloadAction.tsx:24 -msgid "Excel (.xls)" -msgstr "" - -#: src/tables/DownloadAction.tsx:25 msgid "Excel (.xlsx)" msgstr "" -#: src/tables/DownloadAction.tsx:39 +#: src/tables/DownloadAction.tsx:24 +#~ msgid "Excel (.xls)" +#~ msgstr "Excel (.xls)" + +#: src/tables/DownloadAction.tsx:38 msgid "Download Data" msgstr "" @@ -4900,54 +5146,54 @@ msgstr "" msgid "Clear Filters" msgstr "" -#: src/tables/InvenTreeTable.tsx:119 -#: src/tables/InvenTreeTable.tsx:390 -#: src/tables/InvenTreeTable.tsx:411 +#: src/tables/InvenTreeTable.tsx:127 +#: src/tables/InvenTreeTable.tsx:409 +#: src/tables/InvenTreeTable.tsx:430 msgid "No records found" msgstr "" -#: src/tables/InvenTreeTable.tsx:422 +#: src/tables/InvenTreeTable.tsx:441 msgid "Server returned incorrect data type" msgstr "" -#: src/tables/InvenTreeTable.tsx:430 +#: src/tables/InvenTreeTable.tsx:449 msgid "Bad request" msgstr "" -#: src/tables/InvenTreeTable.tsx:433 +#: src/tables/InvenTreeTable.tsx:452 msgid "Unauthorized" msgstr "" -#: src/tables/InvenTreeTable.tsx:436 +#: src/tables/InvenTreeTable.tsx:455 msgid "Forbidden" msgstr "" -#: src/tables/InvenTreeTable.tsx:439 +#: src/tables/InvenTreeTable.tsx:458 msgid "Not found" msgstr "" -#: src/tables/InvenTreeTable.tsx:488 -#: src/tables/InvenTreeTable.tsx:606 +#: src/tables/InvenTreeTable.tsx:506 +#: src/tables/InvenTreeTable.tsx:625 msgid "Delete selected records" msgstr "" -#: src/tables/InvenTreeTable.tsx:492 +#: src/tables/InvenTreeTable.tsx:510 msgid "Are you sure you want to delete the selected records?" msgstr "" -#: src/tables/InvenTreeTable.tsx:494 +#: src/tables/InvenTreeTable.tsx:512 msgid "This action cannot be undone!" msgstr "" -#: src/tables/InvenTreeTable.tsx:517 +#: src/tables/InvenTreeTable.tsx:535 msgid "Deleted records" msgstr "" -#: src/tables/InvenTreeTable.tsx:518 +#: src/tables/InvenTreeTable.tsx:536 msgid "Records were deleted successfully" msgstr "" -#: src/tables/InvenTreeTable.tsx:527 +#: src/tables/InvenTreeTable.tsx:545 msgid "Failed to delete records" msgstr "" @@ -4956,175 +5202,153 @@ msgstr "" #~ msgid "Print actions" #~ msgstr "Print actions" -#: src/tables/InvenTreeTable.tsx:596 -#: src/tables/InvenTreeTable.tsx:597 +#: src/tables/InvenTreeTable.tsx:615 +#: src/tables/InvenTreeTable.tsx:616 msgid "Barcode actions" msgstr "" -#: src/tables/InvenTreeTable.tsx:625 +#: src/tables/InvenTreeTable.tsx:644 msgid "Refresh data" msgstr "" -#: src/tables/InvenTreeTable.tsx:646 +#: src/tables/InvenTreeTable.tsx:670 msgid "Table filters" msgstr "" -#: src/tables/bom/BomTable.tsx:80 +#: src/tables/UploadAction.tsx:9 +msgid "Upload Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:94 msgid "This BOM item is defined for a different parent" msgstr "" -#: src/tables/bom/BomTable.tsx:95 +#: src/tables/bom/BomTable.tsx:109 msgid "Part Information" msgstr "" -#: src/tables/bom/BomTable.tsx:184 -#: src/tables/part/PartTable.tsx:124 -msgid "No stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:192 +#: src/tables/bom/BomTable.tsx:211 #: src/tables/build/BuildLineTable.tsx:104 -#: src/tables/part/PartTable.tsx:115 +#: src/tables/part/PartTable.tsx:125 msgid "External stock" msgstr "" -#: src/tables/bom/BomTable.tsx:200 +#: src/tables/bom/BomTable.tsx:219 #: src/tables/build/BuildLineTable.tsx:67 msgid "Includes substitute stock" msgstr "" -#: src/tables/bom/BomTable.tsx:209 +#: src/tables/bom/BomTable.tsx:228 #: src/tables/build/BuildLineTable.tsx:77 msgid "Includes variant stock" msgstr "" -#: src/tables/bom/BomTable.tsx:234 -#: src/tables/part/PartTable.tsx:143 -#: src/tables/stock/StockItemTable.tsx:205 +#: src/tables/bom/BomTable.tsx:253 +#: src/tables/part/PartTable.tsx:153 +#: src/tables/stock/StockItemTable.tsx:215 msgid "Stock Information" msgstr "" -#: src/tables/bom/BomTable.tsx:246 -#: src/tables/build/BuildLineTable.tsx:195 +#: src/tables/bom/BomTable.tsx:284 +#: src/tables/build/BuildLineTable.tsx:204 msgid "Consumable item" msgstr "" -#: src/tables/bom/BomTable.tsx:267 -msgid "Show trackable items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:272 -msgid "Show asssmbled items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:277 -msgid "Show items with available stock" -msgstr "" - -#: src/tables/bom/BomTable.tsx:282 -msgid "Show items on order" -msgstr "" - -#: src/tables/bom/BomTable.tsx:286 -msgid "Validated" -msgstr "" - #: src/tables/bom/BomTable.tsx:287 -msgid "Show validated items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:291 -#: src/tables/bom/UsedInTable.tsx:63 -msgid "Inherited" -msgstr "" - -#: src/tables/bom/BomTable.tsx:292 -#: src/tables/bom/UsedInTable.tsx:64 -msgid "Show inherited items" -msgstr "" - -#: src/tables/bom/BomTable.tsx:296 -msgid "Allow Variants" -msgstr "" - -#: src/tables/bom/BomTable.tsx:297 -msgid "Show items which allow variant substitution" -msgstr "" - -#: src/tables/bom/BomTable.tsx:301 -#: src/tables/bom/UsedInTable.tsx:68 -#: src/tables/build/BuildLineTable.tsx:46 -msgid "Optional" +msgid "No available stock" msgstr "" #: src/tables/bom/BomTable.tsx:301 #~ msgid "Create BOM Item" #~ msgstr "Create BOM Item" -#: src/tables/bom/BomTable.tsx:302 -#: src/tables/bom/UsedInTable.tsx:69 -msgid "Show optional items" +#: src/tables/bom/BomTable.tsx:305 +msgid "Show trackable items" msgstr "" -#: src/tables/bom/BomTable.tsx:306 -#: src/tables/build/BuildLineTable.tsx:41 -msgid "Consumable" +#: src/tables/bom/BomTable.tsx:310 +msgid "Show asssmbled items" msgstr "" -#: src/tables/bom/BomTable.tsx:307 -msgid "Show consumable items" +#: src/tables/bom/BomTable.tsx:315 +msgid "Show items with available stock" msgstr "" -#: src/tables/bom/BomTable.tsx:311 -#: src/tables/part/PartTable.tsx:250 -msgid "Has Pricing" +#: src/tables/bom/BomTable.tsx:320 +msgid "Show items on order" msgstr "" -#: src/tables/bom/BomTable.tsx:312 -msgid "Show items with pricing" +#: src/tables/bom/BomTable.tsx:324 +msgid "Validated" msgstr "" -#: src/tables/bom/BomTable.tsx:321 -#: src/tables/bom/BomTable.tsx:420 -msgid "Add BOM Item" +#: src/tables/bom/BomTable.tsx:325 +msgid "Show validated items" msgstr "" -#: src/tables/bom/BomTable.tsx:326 -msgid "BOM item created" +#: src/tables/bom/BomTable.tsx:329 +#: src/tables/bom/UsedInTable.tsx:63 +msgid "Inherited" +msgstr "" + +#: src/tables/bom/BomTable.tsx:330 +#: src/tables/bom/UsedInTable.tsx:64 +msgid "Show inherited items" msgstr "" #: src/tables/bom/BomTable.tsx:331 #~ msgid "Edit Bom Item" #~ msgstr "Edit Bom Item" -#: src/tables/bom/BomTable.tsx:333 -msgid "Edit BOM Item" -msgstr "" - #: src/tables/bom/BomTable.tsx:333 #~ msgid "Bom item updated" #~ msgstr "Bom item updated" +#: src/tables/bom/BomTable.tsx:334 +msgid "Allow Variants" +msgstr "" + #: src/tables/bom/BomTable.tsx:335 -msgid "BOM item updated" +msgid "Show items which allow variant substitution" msgstr "" -#: src/tables/bom/BomTable.tsx:342 -msgid "Delete BOM Item" +#: src/tables/bom/BomTable.tsx:339 +#: src/tables/bom/UsedInTable.tsx:68 +#: src/tables/build/BuildLineTable.tsx:46 +msgid "Optional" msgstr "" -#: src/tables/bom/BomTable.tsx:343 -msgid "BOM item deleted" +#: src/tables/bom/BomTable.tsx:340 +#: src/tables/bom/UsedInTable.tsx:69 +msgid "Show optional items" +msgstr "" + +#: src/tables/bom/BomTable.tsx:344 +#: src/tables/build/BuildLineTable.tsx:41 +msgid "Consumable" +msgstr "" + +#: src/tables/bom/BomTable.tsx:345 +msgid "Show consumable items" msgstr "" #: src/tables/bom/BomTable.tsx:348 #~ msgid "Delete Bom Item" #~ msgstr "Delete Bom Item" +#: src/tables/bom/BomTable.tsx:349 +#: src/tables/part/PartTable.tsx:276 +msgid "Has Pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:349 #~ msgid "Bom item deleted" #~ msgstr "Bom item deleted" +#: src/tables/bom/BomTable.tsx:350 +msgid "Show items with pricing" +msgstr "" + #: src/tables/bom/BomTable.tsx:351 #~ msgid "Are you sure you want to remove this BOM item?" #~ msgstr "Are you sure you want to remove this BOM item?" @@ -5133,32 +5357,85 @@ msgstr "" #~ msgid "Validate BOM line" #~ msgstr "Validate BOM line" -#: src/tables/bom/BomTable.tsx:355 +#: src/tables/bom/BomTable.tsx:372 +#: src/tables/bom/BomTable.tsx:504 +msgid "Import BOM Data" +msgstr "" + +#: src/tables/bom/BomTable.tsx:382 +#: src/tables/bom/BomTable.tsx:516 +msgid "Add BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:387 +msgid "BOM item created" +msgstr "" + +#: src/tables/bom/BomTable.tsx:394 +msgid "Edit BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:396 +msgid "BOM item updated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:403 +msgid "Delete BOM Item" +msgstr "" + +#: src/tables/bom/BomTable.tsx:404 +msgid "BOM item deleted" +msgstr "" + +#: src/tables/bom/BomTable.tsx:417 +#: src/tables/bom/BomTable.tsx:420 +#: src/tables/bom/BomTable.tsx:510 +msgid "Validate BOM" +msgstr "" + +#: src/tables/bom/BomTable.tsx:421 +msgid "Do you want to validate the bill of materials for this assembly?" +msgstr "" + +#: src/tables/bom/BomTable.tsx:424 +msgid "BOM validated" +msgstr "" + +#: src/tables/bom/BomTable.tsx:436 msgid "BOM item validated" msgstr "" -#: src/tables/bom/BomTable.tsx:364 +#: src/tables/bom/BomTable.tsx:445 msgid "Failed to validate BOM item" msgstr "" -#: src/tables/bom/BomTable.tsx:376 +#: src/tables/bom/BomTable.tsx:457 msgid "View BOM" msgstr "" -#: src/tables/bom/BomTable.tsx:385 +#: src/tables/bom/BomTable.tsx:466 msgid "Validate BOM Line" msgstr "" -#: src/tables/bom/BomTable.tsx:399 +#: src/tables/bom/BomTable.tsx:483 msgid "Edit Substitutes" msgstr "" +#: src/tables/bom/BomTable.tsx:532 +#: src/tables/part/PartParameterTable.tsx:191 +msgid "Part is Locked" +msgstr "" + +#: src/tables/bom/BomTable.tsx:537 +msgid "Bill of materials cannot be edited, as the part is locked" +msgstr "" + #: src/tables/bom/UsedInTable.tsx:74 msgid "Show active assemblies" msgstr "" #: src/tables/bom/UsedInTable.tsx:78 -#: src/tables/part/PartTable.tsx:192 +#: src/tables/part/PartTable.tsx:208 #: src/tables/part/PartVariantTable.tsx:30 msgid "Trackable" msgstr "" @@ -5167,8 +5444,37 @@ msgstr "" msgid "Show trackable assemblies" msgstr "" +#: src/tables/build/BuildAllocatedStockTable.tsx:35 +msgid "Allocated to Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:36 +msgid "Show items allocated to a build output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:58 +msgid "Allocated Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:78 +msgid "Available Quantity" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:88 +#: src/tables/build/BuildOutputTable.tsx:253 +msgid "Build Output" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:105 +msgid "Edit Build Item" +msgstr "" + +#: src/tables/build/BuildAllocatedStockTable.tsx:115 +msgid "Delete Build Item" +msgstr "" + #: src/tables/build/BuildLineTable.tsx:31 -#: src/tables/stock/StockItemTable.tsx:270 +#: src/tables/stock/StockItemTable.tsx:304 msgid "Allocated" msgstr "" @@ -5189,7 +5495,7 @@ msgid "Show optional lines" msgstr "" #: src/tables/build/BuildLineTable.tsx:51 -#: src/tables/stock/StockItemTable.tsx:329 +#: src/tables/stock/StockItemTable.tsx:363 msgid "Tracked" msgstr "" @@ -5202,19 +5508,27 @@ msgid "In production" msgstr "" #: src/tables/build/BuildLineTable.tsx:118 -#: src/tables/stock/StockItemTable.tsx:175 +#: src/tables/stock/StockItemTable.tsx:185 msgid "No stock available" msgstr "" #: src/tables/build/BuildLineTable.tsx:157 +msgid "Gets Inherited" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:166 msgid "Unit Quantity" msgstr "" -#: src/tables/build/BuildLineTable.tsx:231 +#: src/tables/build/BuildLineTable.tsx:234 +msgid "Allocate Stock" +msgstr "" + +#: src/tables/build/BuildLineTable.tsx:240 msgid "Order Stock" msgstr "" -#: src/tables/build/BuildLineTable.tsx:237 +#: src/tables/build/BuildLineTable.tsx:246 msgid "Build Stock" msgstr "" @@ -5302,10 +5616,6 @@ msgstr "" msgid "Deallocate stock from build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:205 -msgid "Complete" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:206 msgid "Complete build output" msgstr "" @@ -5322,10 +5632,6 @@ msgstr "" msgid "Cancel build output" msgstr "" -#: src/tables/build/BuildOutputTable.tsx:253 -msgid "Build Output" -msgstr "" - #: src/tables/build/BuildOutputTable.tsx:266 msgid "Batch" msgstr "" @@ -5469,81 +5775,81 @@ msgstr "" msgid "Drag attachment file here to upload" msgstr "" -#: src/tables/machine/MachineListTable.tsx:199 +#: src/tables/machine/MachineListTable.tsx:202 msgid "Machine restarted" msgstr "" -#: src/tables/machine/MachineListTable.tsx:221 -#: src/tables/machine/MachineListTable.tsx:423 -msgid "Restart required" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:225 -msgid "Machine Actions" -msgstr "" - -#: src/tables/machine/MachineListTable.tsx:229 -#: src/tables/machine/MachineListTable.tsx:232 +#: src/tables/machine/MachineListTable.tsx:212 +#: src/tables/machine/MachineListTable.tsx:263 msgid "Edit machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:244 -#: src/tables/machine/MachineListTable.tsx:247 +#: src/tables/machine/MachineListTable.tsx:226 +#: src/tables/machine/MachineListTable.tsx:267 msgid "Delete machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:248 +#: src/tables/machine/MachineListTable.tsx:227 msgid "Machine successfully deleted." msgstr "" -#: src/tables/machine/MachineListTable.tsx:252 +#: src/tables/machine/MachineListTable.tsx:231 msgid "Are you sure you want to remove the machine \"{0}\"?" msgstr "" -#: src/tables/machine/MachineListTable.tsx:263 +#: src/tables/machine/MachineListTable.tsx:255 +#: src/tables/machine/MachineListTable.tsx:432 +msgid "Restart required" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:259 +msgid "Machine Actions" +msgstr "" + +#: src/tables/machine/MachineListTable.tsx:272 msgid "Restart" msgstr "" -#: src/tables/machine/MachineListTable.tsx:265 +#: src/tables/machine/MachineListTable.tsx:274 msgid "Restart machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:267 +#: src/tables/machine/MachineListTable.tsx:276 msgid "manual restart required" msgstr "" -#: src/tables/machine/MachineListTable.tsx:283 +#: src/tables/machine/MachineListTable.tsx:292 msgid "Machine information" msgstr "" -#: src/tables/machine/MachineListTable.tsx:294 -#: src/tables/machine/MachineListTable.tsx:590 +#: src/tables/machine/MachineListTable.tsx:303 +#: src/tables/machine/MachineListTable.tsx:599 msgid "Machine Type" msgstr "" -#: src/tables/machine/MachineListTable.tsx:307 +#: src/tables/machine/MachineListTable.tsx:316 msgid "Machine Driver" msgstr "" -#: src/tables/machine/MachineListTable.tsx:320 +#: src/tables/machine/MachineListTable.tsx:329 msgid "Initialized" msgstr "" -#: src/tables/machine/MachineListTable.tsx:341 +#: src/tables/machine/MachineListTable.tsx:350 #: src/tables/machine/MachineTypeTable.tsx:261 msgid "Errors" msgstr "" -#: src/tables/machine/MachineListTable.tsx:349 +#: src/tables/machine/MachineListTable.tsx:358 #: src/tables/machine/MachineTypeTable.tsx:269 msgid "No errors reported" msgstr "" -#: src/tables/machine/MachineListTable.tsx:369 +#: src/tables/machine/MachineListTable.tsx:378 msgid "Machine Settings" msgstr "" -#: src/tables/machine/MachineListTable.tsx:380 +#: src/tables/machine/MachineListTable.tsx:389 msgid "Driver Settings" msgstr "" @@ -5551,15 +5857,15 @@ msgstr "" #~ msgid "Create machine" #~ msgstr "Create machine" -#: src/tables/machine/MachineListTable.tsx:497 +#: src/tables/machine/MachineListTable.tsx:506 msgid "Add machine" msgstr "" -#: src/tables/machine/MachineListTable.tsx:552 +#: src/tables/machine/MachineListTable.tsx:561 msgid "Machine detail" msgstr "" -#: src/tables/machine/MachineListTable.tsx:599 +#: src/tables/machine/MachineListTable.tsx:608 msgid "Driver" msgstr "" @@ -5634,27 +5940,45 @@ msgstr "" msgid "Message" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:76 -#: src/tables/part/PartParameterTable.tsx:88 +#: src/tables/part/ParametricPartTable.tsx:77 +#: src/tables/part/PartParameterTable.tsx:95 msgid "Internal Units" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:81 +#: src/tables/part/ParametricPartTable.tsx:82 msgid "Edit parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:124 +#: src/tables/part/ParametricPartTable.tsx:125 msgid "Add Part Parameter" msgstr "" -#: src/tables/part/ParametricPartTable.tsx:138 -#: src/tables/part/PartParameterTable.tsx:121 -#: src/tables/part/PartParameterTable.tsx:144 +#: src/tables/part/ParametricPartTable.tsx:139 +#: src/tables/part/PartParameterTable.tsx:128 +#: src/tables/part/PartParameterTable.tsx:151 msgid "Edit Part Parameter" msgstr "" +#: src/tables/part/ParametricPartTable.tsx:223 +msgid "Show active parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:228 +msgid "Show locked parts" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:232 +#: src/tables/part/PartTable.tsx:190 +#: src/tables/stock/StockItemTable.tsx:299 +msgid "Assembly" +msgstr "" + +#: src/tables/part/ParametricPartTable.tsx:233 +msgid "Show assembly parts" +msgstr "" + #: src/tables/part/PartCategoryTable.tsx:60 -#: src/tables/part/PartTable.tsx:180 +#: src/tables/part/PartTable.tsx:196 msgid "Include Subcategories" msgstr "" @@ -5667,7 +5991,7 @@ msgid "Show structural categories" msgstr "" #: src/tables/part/PartCategoryTable.tsx:70 -#: src/tables/part/PartTable.tsx:262 +#: src/tables/part/PartTable.tsx:288 msgid "Subscribed" msgstr "" @@ -5704,21 +6028,25 @@ msgstr "" #~ msgid "[{0}]" #~ msgstr "[{0}]" -#: src/tables/part/PartParameterTable.tsx:105 +#: src/tables/part/PartParameterTable.tsx:112 msgid "New Part Parameter" msgstr "" -#: src/tables/part/PartParameterTable.tsx:130 -#: src/tables/part/PartParameterTable.tsx:152 +#: src/tables/part/PartParameterTable.tsx:137 +#: src/tables/part/PartParameterTable.tsx:159 msgid "Delete Part Parameter" msgstr "" -#: src/tables/part/PartParameterTable.tsx:170 +#: src/tables/part/PartParameterTable.tsx:177 msgid "Add parameter" msgstr "" -#: src/tables/part/PartParameterTable.tsx:191 -#: src/tables/stock/StockItemTable.tsx:300 +#: src/tables/part/PartParameterTable.tsx:196 +msgid "Part parameters cannot be edited, as the part is locked" +msgstr "" + +#: src/tables/part/PartParameterTable.tsx:210 +#: src/tables/stock/StockItemTable.tsx:334 msgid "Include Variants" msgstr "" @@ -5739,7 +6067,7 @@ msgid "Show templates with choices" msgstr "" #: src/tables/part/PartParameterTemplateTable.tsx:41 -#: src/tables/part/PartTable.tsx:198 +#: src/tables/part/PartTable.tsx:214 msgid "Has Units" msgstr "" @@ -5763,116 +6091,137 @@ msgstr "" msgid "Add parameter template" msgstr "" -#: src/tables/part/PartTable.tsx:67 +#: src/tables/part/PartTable.tsx:77 msgid "Minimum stock" msgstr "" -#: src/tables/part/PartTable.tsx:89 +#: src/tables/part/PartTable.tsx:99 msgid "Build Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:98 +#: src/tables/part/PartTable.tsx:108 msgid "Sales Order Allocations" msgstr "" -#: src/tables/part/PartTable.tsx:169 +#: src/tables/part/PartTable.tsx:179 msgid "Filter by part active status" msgstr "" -#: src/tables/part/PartTable.tsx:174 -#: src/tables/stock/StockItemTable.tsx:265 -msgid "Assembly" +#: src/tables/part/PartTable.tsx:185 +msgid "Filter by part locked status" msgstr "" -#: src/tables/part/PartTable.tsx:175 +#: src/tables/part/PartTable.tsx:191 msgid "Filter by assembly attribute" msgstr "" -#: src/tables/part/PartTable.tsx:181 +#: src/tables/part/PartTable.tsx:197 msgid "Include parts in subcategories" msgstr "" -#: src/tables/part/PartTable.tsx:187 +#: src/tables/part/PartTable.tsx:203 msgid "Filter by component attribute" msgstr "" -#: src/tables/part/PartTable.tsx:193 +#: src/tables/part/PartTable.tsx:209 msgid "Filter by trackable attribute" msgstr "" -#: src/tables/part/PartTable.tsx:199 +#: src/tables/part/PartTable.tsx:215 msgid "Filter by parts which have units" msgstr "" -#: src/tables/part/PartTable.tsx:204 +#: src/tables/part/PartTable.tsx:220 msgid "Has IPN" msgstr "" -#: src/tables/part/PartTable.tsx:205 +#: src/tables/part/PartTable.tsx:221 msgid "Filter by parts which have an internal part number" msgstr "" -#: src/tables/part/PartTable.tsx:210 +#: src/tables/part/PartTable.tsx:226 msgid "Has Stock" msgstr "" -#: src/tables/part/PartTable.tsx:211 +#: src/tables/part/PartTable.tsx:227 msgid "Filter by parts which have stock" msgstr "" -#: src/tables/part/PartTable.tsx:217 +#: src/tables/part/PartTable.tsx:233 msgid "Filter by parts which have low stock" msgstr "" -#: src/tables/part/PartTable.tsx:222 +#: src/tables/part/PartTable.tsx:238 msgid "Purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:223 +#: src/tables/part/PartTable.tsx:239 msgid "Filter by parts which are purchaseable" msgstr "" -#: src/tables/part/PartTable.tsx:228 +#: src/tables/part/PartTable.tsx:244 msgid "Salable" msgstr "" -#: src/tables/part/PartTable.tsx:229 +#: src/tables/part/PartTable.tsx:245 msgid "Filter by parts which are salable" msgstr "" -#: src/tables/part/PartTable.tsx:235 -msgid "Filter by parts which are virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:239 -msgid "Not Virtual" -msgstr "" - -#: src/tables/part/PartTable.tsx:244 -msgid "Is Template" -msgstr "" - -#: src/tables/part/PartTable.tsx:245 -msgid "Filter by parts which are templates" +#: src/tables/part/PartTable.tsx:250 +#: src/tables/part/PartTable.tsx:254 +#: src/tables/part/PartVariantTable.tsx:25 +msgid "Virtual" msgstr "" #: src/tables/part/PartTable.tsx:251 +msgid "Filter by parts which are virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:255 +msgid "Not Virtual" +msgstr "" + +#: src/tables/part/PartTable.tsx:260 +msgid "Is Template" +msgstr "" + +#: src/tables/part/PartTable.tsx:261 +msgid "Filter by parts which are templates" +msgstr "" + +#: src/tables/part/PartTable.tsx:266 +msgid "Is Revision" +msgstr "" + +#: src/tables/part/PartTable.tsx:267 +msgid "Filter by parts which are revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:271 +msgid "Has Revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:272 +msgid "Filter by parts which have revisions" +msgstr "" + +#: src/tables/part/PartTable.tsx:277 msgid "Filter by parts which have pricing information" msgstr "" -#: src/tables/part/PartTable.tsx:257 +#: src/tables/part/PartTable.tsx:283 msgid "Filter by parts which have available stock" msgstr "" -#: src/tables/part/PartTable.tsx:263 +#: src/tables/part/PartTable.tsx:289 msgid "Filter by parts to which the user is subscribed" msgstr "" -#: src/tables/part/PartTable.tsx:268 +#: src/tables/part/PartTable.tsx:294 msgid "Has Stocktake" msgstr "" -#: src/tables/part/PartTable.tsx:269 +#: src/tables/part/PartTable.tsx:295 msgid "Filter by parts which have stocktake information" msgstr "" @@ -6211,7 +6560,7 @@ msgid "Sample" msgstr "" #: src/tables/plugin/PluginListTable.tsx:578 -#: src/tables/stock/StockItemTable.tsx:305 +#: src/tables/stock/StockItemTable.tsx:339 msgid "Installed" msgstr "" @@ -6264,55 +6613,56 @@ msgstr "" #~ msgid "Are you sure you want to remove this manufacturer part?" #~ msgstr "Are you sure you want to remove this manufacturer part?" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:86 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:99 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:330 +msgid "Import Line Items" +msgstr "" + +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:139 msgid "Part Description" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:113 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:166 msgid "Total Quantity" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:129 -msgid "Received" -msgstr "" - -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:148 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:205 msgid "Supplier Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:155 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:212 msgid "Supplier Link" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:162 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:219 msgid "Manufacturer Code" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:176 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:233 msgid "Destination" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:198 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:255 msgid "Add Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:215 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 msgid "Edit Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:223 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:280 msgid "Delete Line Item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:234 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:291 msgid "Receive line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:272 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:335 msgid "Add line item" msgstr "" -#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:282 +#: src/tables/purchasing/PurchaseOrderLineItemTable.tsx:345 msgid "Receive items" msgstr "" @@ -6465,27 +6815,62 @@ msgstr "" msgid "Permission set" msgstr "" -#: src/tables/settings/GroupTable.tsx:126 +#: src/tables/settings/GroupTable.tsx:127 msgid "Delete group" msgstr "" -#: src/tables/settings/GroupTable.tsx:127 +#: src/tables/settings/GroupTable.tsx:128 msgid "Group deleted" msgstr "" -#: src/tables/settings/GroupTable.tsx:129 +#: src/tables/settings/GroupTable.tsx:130 msgid "Are you sure you want to delete this group?" msgstr "" -#: src/tables/settings/GroupTable.tsx:134 -#: src/tables/settings/GroupTable.tsx:146 +#: src/tables/settings/GroupTable.tsx:135 +#: src/tables/settings/GroupTable.tsx:147 msgid "Add group" msgstr "" -#: src/tables/settings/GroupTable.tsx:158 +#: src/tables/settings/GroupTable.tsx:159 msgid "Edit group" msgstr "" +#: src/tables/settings/ImportSessionTable.tsx:39 +msgid "Delete Import Session" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:45 +#: src/tables/settings/ImportSessionTable.tsx:132 +msgid "Create Import Session" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:70 +msgid "Uploaded" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:80 +msgid "Imported Rows" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:110 +#: src/tables/settings/TemplateTable.tsx:276 +msgid "Model Type" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:111 +#: src/tables/settings/TemplateTable.tsx:277 +msgid "Filter by target model type" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:117 +msgid "Filter by import session status" +msgstr "" + +#: src/tables/settings/ImportSessionTable.tsx:123 +msgid "Filter by user" +msgstr "" + #: src/tables/settings/PendingTasksTable.tsx:36 msgid "Arguments" msgstr "" @@ -6502,7 +6887,7 @@ msgstr "" msgid "Delete Project Code" msgstr "" -#: src/tables/settings/ProjectCodeTable.tsx:94 +#: src/tables/settings/ProjectCodeTable.tsx:92 msgid "Add project code" msgstr "" @@ -6571,14 +6956,6 @@ msgstr "" msgid "Filter by enabled status" msgstr "" -#: src/tables/settings/TemplateTable.tsx:276 -msgid "Model Type" -msgstr "" - -#: src/tables/settings/TemplateTable.tsx:277 -msgid "Filter by target model type" -msgstr "" - #: src/tables/settings/UserTable.tsx:79 msgid "User with id {id} not found" msgstr "" @@ -6661,189 +7038,201 @@ msgstr "" msgid "Icon" msgstr "" -#: src/tables/stock/StockItemTable.tsx:90 +#: src/tables/stock/StockItemTable.tsx:100 msgid "This stock item is in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:99 +#: src/tables/stock/StockItemTable.tsx:109 msgid "This stock item has been assigned to a sales order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:108 +#: src/tables/stock/StockItemTable.tsx:118 msgid "This stock item has been assigned to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:117 +#: src/tables/stock/StockItemTable.tsx:127 msgid "This stock item is installed in another stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:126 +#: src/tables/stock/StockItemTable.tsx:136 msgid "This stock item has been consumed by a build order" msgstr "" -#: src/tables/stock/StockItemTable.tsx:135 +#: src/tables/stock/StockItemTable.tsx:145 msgid "This stock item has expired" msgstr "" -#: src/tables/stock/StockItemTable.tsx:139 +#: src/tables/stock/StockItemTable.tsx:149 msgid "This stock item is stale" msgstr "" -#: src/tables/stock/StockItemTable.tsx:150 +#: src/tables/stock/StockItemTable.tsx:160 msgid "This stock item is fully allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:157 +#: src/tables/stock/StockItemTable.tsx:167 msgid "This stock item is partially allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:185 +#: src/tables/stock/StockItemTable.tsx:195 msgid "This stock item has been depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:255 +#: src/tables/stock/StockItemTable.tsx:231 +msgid "Stocktake Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:235 +msgid "Expiry Date" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:259 +msgid "Stock Value" +msgstr "" + +#: src/tables/stock/StockItemTable.tsx:289 msgid "Show stock for active parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:260 +#: src/tables/stock/StockItemTable.tsx:294 msgid "Filter by stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:266 +#: src/tables/stock/StockItemTable.tsx:300 msgid "Show stock for assmebled parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:271 +#: src/tables/stock/StockItemTable.tsx:305 msgid "Show items which have been allocated" msgstr "" -#: src/tables/stock/StockItemTable.tsx:276 +#: src/tables/stock/StockItemTable.tsx:310 msgid "Show items which are available" msgstr "" -#: src/tables/stock/StockItemTable.tsx:280 +#: src/tables/stock/StockItemTable.tsx:314 #: src/tables/stock/StockLocationTable.tsx:42 msgid "Include Sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:281 +#: src/tables/stock/StockItemTable.tsx:315 msgid "Include stock in sublocations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:285 +#: src/tables/stock/StockItemTable.tsx:319 msgid "Depleted" msgstr "" -#: src/tables/stock/StockItemTable.tsx:286 +#: src/tables/stock/StockItemTable.tsx:320 msgid "Show depleted stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:291 +#: src/tables/stock/StockItemTable.tsx:325 msgid "Show items which are in stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:296 +#: src/tables/stock/StockItemTable.tsx:330 msgid "Show items which are in production" msgstr "" -#: src/tables/stock/StockItemTable.tsx:301 +#: src/tables/stock/StockItemTable.tsx:335 msgid "Include stock items for variant parts" msgstr "" -#: src/tables/stock/StockItemTable.tsx:306 +#: src/tables/stock/StockItemTable.tsx:340 msgid "Show stock items which are installed in other items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:310 +#: src/tables/stock/StockItemTable.tsx:344 msgid "Sent to Customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:311 +#: src/tables/stock/StockItemTable.tsx:345 msgid "Show items which have been sent to a customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:315 +#: src/tables/stock/StockItemTable.tsx:349 msgid "Is Serialized" msgstr "" -#: src/tables/stock/StockItemTable.tsx:316 +#: src/tables/stock/StockItemTable.tsx:350 msgid "Show items which have a serial number" msgstr "" -#: src/tables/stock/StockItemTable.tsx:323 +#: src/tables/stock/StockItemTable.tsx:357 msgid "Has Batch Code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:324 +#: src/tables/stock/StockItemTable.tsx:358 msgid "Show items which have a batch code" msgstr "" -#: src/tables/stock/StockItemTable.tsx:330 +#: src/tables/stock/StockItemTable.tsx:364 msgid "Show tracked items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:334 +#: src/tables/stock/StockItemTable.tsx:368 msgid "Has Purchase Price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:335 +#: src/tables/stock/StockItemTable.tsx:369 msgid "Show items which have a purchase price" msgstr "" -#: src/tables/stock/StockItemTable.tsx:343 +#: src/tables/stock/StockItemTable.tsx:377 msgid "External Location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:344 +#: src/tables/stock/StockItemTable.tsx:378 msgid "Show items in an external location" msgstr "" -#: src/tables/stock/StockItemTable.tsx:416 +#: src/tables/stock/StockItemTable.tsx:450 msgid "Add a new stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:425 +#: src/tables/stock/StockItemTable.tsx:459 msgid "Remove some quantity from a stock item" msgstr "" -#: src/tables/stock/StockItemTable.tsx:447 +#: src/tables/stock/StockItemTable.tsx:481 msgid "Move Stock items to new locations" msgstr "" -#: src/tables/stock/StockItemTable.tsx:454 +#: src/tables/stock/StockItemTable.tsx:488 msgid "Change stock status" msgstr "" -#: src/tables/stock/StockItemTable.tsx:456 +#: src/tables/stock/StockItemTable.tsx:490 msgid "Change the status of stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:463 +#: src/tables/stock/StockItemTable.tsx:497 msgid "Merge stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:465 +#: src/tables/stock/StockItemTable.tsx:499 msgid "Merge stock items" msgstr "" -#: src/tables/stock/StockItemTable.tsx:472 +#: src/tables/stock/StockItemTable.tsx:506 msgid "Order stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:474 -#: src/tables/stock/StockItemTable.tsx:480 +#: src/tables/stock/StockItemTable.tsx:508 +#: src/tables/stock/StockItemTable.tsx:514 msgid "Order new stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:478 +#: src/tables/stock/StockItemTable.tsx:512 msgid "Assign to customer" msgstr "" -#: src/tables/stock/StockItemTable.tsx:487 +#: src/tables/stock/StockItemTable.tsx:521 msgid "Delete stock" msgstr "" -#: src/tables/stock/StockItemTable.tsx:489 +#: src/tables/stock/StockItemTable.tsx:523 msgid "Delete stock items" msgstr ""